Docker에서 작업 디렉토리 명령 변경

Marion Paul Kenneth Mendoza 2023년6월20일
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 Paul Kenneth Mendoza avatar Marion Paul Kenneth Mendoza avatar

Marion specializes in anything Microsoft-related and always tries to work and apply code in an IT infrastructure.

LinkedIn

관련 문장 - Docker Directory