Docker에서 작업 디렉토리 명령 변경
Docker에서 컨테이너를 생성 및 시작하지 않고 컨테이너의 셸 내부에서 exec
하지 않은 경우 터미널 명령을 원활하게 실행할 수 없습니다. 이러한 명령의 한 예는 작업 디렉토리를 변경하는 것입니다.
특정 디렉터리에 구성 요소를 설치해야 하는 경우 작업 디렉터리 변경이 필수적입니다. 이 기사에서는 Docker에서 작업 디렉토리를 변경하는 방법에 대해 설명합니다.
Docker에서 작업 디렉토리 변경
우리가 다룰 다음 명령은 기본 명령이 아니라 Dockerfile을 준비할 때 사용할 항목입니다. 기억할 수 있다면 docker build
명령을 실행할 때 Dockerfile을 사용하여 컨테이너 생성을 자동화할 수 있습니다.
다음 섹션에서는 Dockerfile을 통해 작업 디렉터리를 변경하는 두 가지 방법에 대해 설명합니다.
RUN
명령 사용
RUN
명령을 사용하여 터미널 스크립트를 실행할 수 있습니다. 그런 다음 Dockerfile 안에 아래와 같은 항목을 삽입하여 작업 디렉터리를 변경할 수 있습니다.
RUN cd /dev
다른 명령을 실행하기 전에 cd
명령으로 작업 디렉토리를 변경할 수 있습니다. 그러나 여러 명령을 실행하기 위해 Dockerfile에 새 RUN
항목을 추가할 필요는 없습니다.
하나의 RUN
라인으로 다양한 명령을 사용하고 추가할 수 있습니다.
예제 코드:
RUN cd /dev && git clone sample.git && pip install -r requirements.txt
AND(&&
) 연산자를 사용하여 여러 명령을 실행할 수 있습니다. 예를 들어, 다음 명령은 뒤에 있는 이전 명령이 성공한 경우에만 실행됩니다.
이 경우 git clone
명령이 실패하면 pip install
명령이 실행되지 않습니다. 그러나 컨테이너 내부의 작업 디렉터리를 변경하면 더 간단한 방법이 있습니다.
WORKDIR
명령 사용
RUN
명령과 마찬가지로 Dockerfile 내에 WORKDIR
명령을 추가하여 컨테이너가 실행되면 작업 디렉터리를 변경할 수 있습니다.
WORKDIR "/dev"
WORKDIR
명령은 Docker용 빌드 파일을 작성할 때 Dockerfile 모범 사례로 간주됩니다. 이 시나리오는 위의 명령이 컨테이너에서 실행된 명령을 더 쉽게 읽고 구별할 수 있도록 하기 때문에 발생합니다.
WORKDIR "/dev"
RUN git clone sample.git && pip install -r requirements.txt
Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.
LinkedIn