Dockerfile 정리

FROM

FROM <image>:<tag>

초기 설정 이미지를 초기화한다. 파일의 첫줄은 반드시 FROM으로 시작해야한다. 복수의 FROM  선언도 가능. tag를 생략하며녀 lastest를 기본으로 가져온다.

ENV

ENV <key> <value>

ENV myDog ZooZoo

환경 변수 설정, 컨테이너가 이미지에서 실행될 때 지속.

ENV <key>=<value>

ENV myName=“Devin”

        myDog=ZooZoo

WORKDIR

WORKDIR /path/to/workdir

RUN pwd

작업 디렉토리를 설정함. 환경변수를 설정할경우 ENV에 명시된 환경변수만 사용가능.

pwd명령어는 /path/to/workdir에서 실행될 것임.

COPY

COPY hom* /mydir/

COPY file.txt /mydir/

COPY . /app

hom으로 시작되는 모든 파일 /mydir/ 복사

file.txt /mydir/ 복사

현재 경로 모든파일 /app으로 복사

RUN

RUN <command>

RUN pip install

현재 이미지 위에 명령을 실행하기 위해 사용. 예를 들어 뭔가 설치할때

EXPOSE

EXPOSE <port>

EXPOSE <port>/<protocol>

컨테이너가 어떤 포트로 개시될 것인가에 대해 명시한다.(실제 개시X) -P옵션을 통해 실제로 바인드시킬 수는 있다.

CMD

CMD [“executable”, “param1”, “param2”]

하나만 설정가능, 컨테이너가 생성될때 실행될 명령어 선언. RUN은 실제로 이미지에 영향을 주지만 CMD는 다른 개념이다.

LABEL

LABEL <key>=<value>

LABEL maintainer=“test@gmail.com”

이미지에 메타데이터를 추가한다.

파일 작성자를 알려주기 위함

ARG

ARG <name>[=<default value>]

docker build —build-arg 옵션으로 도커 빌드를 진행하려면  ARG 사전 정의를 해야만한다.

ENTRYPOINT

ENTRYPOINT [“executable”, “param1”, “param2”]

컨테이너가 만들어질 때 실행할 명령을 설정한다.

docker run <image> ENTRYPOINT 실행 인자로 붙는다.

You may also like...

답글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다.