1. FROM : 기본 이미지를 지정
# 사용문법
FROM [--platform=<platform>] <image>[:<tag>] [AS <name>]
# 예시
FROM ubuntu:latest
2. RUN : 명령어 실행
# 사용문법
RUN <command>
RUN ["executable", "param1", "param2"]
# 예시
RUN apt-get update
RUN /bin/bash -c 'source $HOME/.bashrc; echo $HOME'
RUN ["/bin/bash", "-c", "echo hello"]
3. CMD : 컨테이너 생성시 실행할 명령어. Dockerfile 내에 한 번만 사용 가능
# 사용문법
CMD ["executable","param1","param2"]
CMD ["param1","param2"]
CMD command param1 param2
# 예시
CMD echo "This is a test." | wc.
CMD ["/usr/bin/wc","--help"]
4. EXPOSE : 컨테이너에서 사용할 포트 정보. 실제로 오픈하는것은 아니며 docker run 실행 시 -p 옵션을 사용하여 포트를 열어주어야 한다.
# 사용문법
EXPOSE <port> [<port>/<protocol>...]
# 예시
EXPOSE 9000
5. ENV : 환경변수를 설정
# 사용문법
ENV <key>=<value> ...
# 예시
ENV MY_NAME="John Doe"
ENV MY_DOG=Rex\ The\ Dog
ENV MY_CAT=fluffy
6. ADD : 파일 또는 디렉토리 추가
# 사용문법
ADD [--chown=<user>:<group>] <src>... <dest>
ADD [--chown=<user>:<group>] ["<src>",... "<dest>"]
# 예시
ADD test.txt relativeDir/
ADD test.txt /absoluteDir/
7. COPY : 파일 또는 디렉토리를 복사
# 사용문법
COPY [--chown=<user>:<group>] <src>... <dest>
COPY [--chown=<user>:<group>] ["<src>",... "<dest>"]
# 예시
COPY test.txt relativeDir/
COPY test.txt /absoluteDir/
8. ENTRYPOINT : 컨테이너 구성 시 기본 실행 명령어
# 실행문법
ENTRYPOINT ["executable", "param1", "param2"]
ENTRYPOINT command param1 param2
# 예시
ENTRYPOINT ["/usr/sbin/apache2ctl", "-D", "FOREGROUND"]
Dockerfile 기본문법(2) (0) | 2022.03.30 |
---|---|
Docker Compose 문법 (0) | 2022.03.28 |
Docker Compose 개요 (0) | 2022.03.25 |
댓글 영역