04. Dockerfile

2024. 1. 17. 21:14Docker & kubernetes

  • Dockerfile이란
    • 완성된 이미지를 생성하기 위해 컨테이너에 설치해야 하는 패키지, 추가해야 하는 소스코드, 실행해야 하는 명령와와 셀 스크립트 등을 기록해 두는 하나의 파일이다. 빌드 명령어를 통해 Dockerfile을 읽어 이미지를 생성할 수 있어 Docker hub에 이미지 대신 Dockerfile를 배포할 수 도 있다.

 

  • 왜 Dockerfile을 사용해야는 가?
    • 애플리케이션에 필요한 패키지 설치 등을 명확히 할 수 있고 이미지 생성을 자동화할 수 있으며 쉽게 배포할 수 있기 때문이다.

 

  • Dockerfile 문법
    • FROM: 생성할 이미지의 베이스가 될 이미지
    • RUN: 이미지를 만들기 위해 컨테이너 내부에서 실행하는 명령어
    • ADD: 이미지에 추가할 파일
      • ADD vs COPY: COPY는 로컬 디렉터리에서 읽어드린 콘텍스트로부터 이미지에 파일을 복사하는 역할로, ADD와는 다르게 외부 파일을 추가할 수 없습니다. 이로 인해 빌드 시점에서 어떤 파일이 추가되는지 명확하게 보이는 COPY를 사용할 것을 권장합니다.
    • WORKDIR: 명령어를 실행할 디렉터리
    • EXPOSE: Dockerfile의 빌드로 생성된 이미지에서 노출할 포트를 설정

 

  • Dockerfile build
docker build -t {image name:tag}

'Docker & kubernetes' 카테고리의 다른 글

05. Docker compose  (0) 2024.02.12
03. 유용한 Docker 명령어 목록  (0) 2024.01.09
02장. 이미지와 컨테이너  (0) 2024.01.06
1장. Docker 와 가상환경  (0) 2024.01.06