[Docker] 도커 컨테이너 내에서 명령 실행하는 법

도커 컨테이너 내부에서 애플리케이션 작업을 할 때 패키지를 설치하거나 파일 시스템에 접근해야 됩니다.

개발을 하면서 여러번 이러한 작업을 수행하므로 컨테이너 내부에서 명령을 실행해야 쉬워집니다.

Bash 사용하기

도커 컨테이너의 bash에 직접 접근하여 명령을 실행할 수 있습니다. 컨테이너의 bash를 실행하는 법은 쉽습니다.

docker run -it hanmailco34/test-001

도커 허브로 올린 test-001은 알파인 리눅스입니다. 실행 후 바로 bash를 사용하여 hello wold를 출력하였습니다.

docker exec 명령어 사용하기

exec 명령어를 사용하여 도커 컨테이너 내부에 명령을 실행하려면 도커 컨테이너의 컨테이너 ID를 알아야합니다.

docker container ls
또는
docker ps -a

컨테이너 ID를 확인한 후 exec 명령어를 사용할 수 있습니다. 하지만 그 전에 컨테이너가 실행시켜야 됩니다.

컨테이너 가 현재 실행 중입니다. exec 명령어를 사용하여 hello wold를 출력하겠습니다.

도커파일 사용하기

Dockerfile에 명령을 지정하여 실행하는 것을 추천합니다. 도커파일에는 컨테이너를 빌드할 때 실행하려는 명령만 포함되었습니다. 즉석에서 명령을 실행하려면 위에 2가지 방법만 사용할 수 있습니다. 

FROM alpine
RUN echo "hello wolrd"

위와 같이 도커파일을 만든 후 빌드를 해줍니다.

docker build -t test-002 .

빌드를 하게되면 RUN 명령어가 실행되는 걸 볼 수 있습니다.