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가 실행 인자로 붙는다. |
최근 댓글