본문으로 바로가기

[Docker] Dockerfile 지시어

category Infrastructure/Docker 2021. 11. 5. 17:50
  • # : comment
  • FROM : 컨테이너의 Base Image (운영환경) - Dockerfile 의 가장 첫줄에 선언되어야 함
  • MAINTAINER : 이미지를 생성한 사람의 이름 및 정보
  • LABEL : 컨테이너 이미지에 컨테이너의 정보를 저장 (Description)
  • RUN : 컨테이너 빌드를 위해 BASE IMAGE 에서 실행할 commands
  • COPY : 컨테이너 빌드시 호스트의 파일을 컨테이너로 복사
  • ADD : 컨테이너 빌드시 호스트의 파일 (tar, url 포함) 을 컨테이너로 복사
    ㄴ 아카이브 파일을 풀어서 복사하거나 특정 url 로부터 다운받아서 복사
  • WORKDIR : 컨테이너 빌드시 명령이 실행될 작업 디렉터리 설정
  • ENV : 컨테이너 내 환경변수 지정 (컨테이너가 빌드된 이후에 남아있음)
  • USER : 명령 및 컨테이너 실행시 적용할 유저 설정
  • VOLUME : 파일 또는 디렉토리를 컨테이너의 디렉터리로 마운트
  • EXPOSE : 컨테이너 동작 시 외부에서 사용할 포트 지정
  • CMD : 컨테이너 동작 시 자동으로 실행할 서비스나 스크립트 지정 (치환가능, argument 사용가능)
  • ENTRYPOINT : CMD와 함께 사용하면서 command 지정 시 사용 (치환 불가능, 명령어 + 바이너리)

docker hub 등을 통해 이미 만들어진 Dockerfile 의 내용들을 참고하자.

창조는 모방에서 만들어진다!