Docker

Dockerfile = Docker에서 이미지 빌드하기

JM Lee 2023. 6. 1. 10:42
728x90

Dockerfile

Docker 의 이미지를 직접 생성하기 위한 용도로 작성하는 파일

Dockerfile을 작성할 때는 기본이 되는 이미지를 지정한 후, 특정 패키지를 설치하거나 파일을 추가하는 등의 작업을 통해 사용자가 직접 이미지를 빌드

 

사용자가 개발한 프로젝트 혹은 설정파일 등을 이미지에 포함시키거나 이미지에 기본적으로 특정 패키지를 설치하고싶을 때 등 다양한 용도로 사용함.

예를 들어 docker에서 django를 배포한다고 가정 했을 때, 기본 python 이미지를 불러온 후 django 패키지를 pip install 한 후 이미지를 생성함.

 

** Dockerfile 작성

# 빌드할 때 사용할 이미지를 지정함.
FROM httpd:latest

# 현재 경로에 존재하는 index.html 파일을 컨테이너 내부로 복사함.
COPY ./index.html /usr/local/apache2/htdocs/index.html

 

** Docker-compose.yml(포트 포워딩 이 정도면 외우고도 남음)

version: '3.8'

services:
  example:
    container_name: example
    build: . 
    ports: 
      - 80:80 
    restart: always

 

** index.html 만들고 Docker 실행

# Dockerfile을 작성할 때 ./index.html 파일을 복사하도록 지정해 줬기 때문에,
# 동일한 이름으로 해당 파일을 생성하고 편집.

vi index.html # 내용 추가

sudo docker compose up --build -d

# Dockerfile로 빌드된 이미지가 없을 경우, --build 옵션을 추가하지 않더라도 이미지를 빌드 하게 됨.
# 그러나, 기존에 빌드된 이미지가 있을 경우에는 새로 빌드하지 않고 기존에 빌드 된 이미지를 사용하기에
# Dockerfile을 수정하고 이미지를 새로 빌드해야 할 때는 --build 옵션을 추가해서 사용해야 함.

'Docker' 카테고리의 다른 글

Docker container 2개 이상 띄우기  (0) 2023.06.01
Entrypoint 활용하기  (0) 2023.06.01
Docker Volume 간단히 이해  (0) 2023.06.01
Container Port Forwarding  (0) 2023.06.01
Docker compose가 무엇일까요?  (0) 2023.06.01