Docker 도커 - DockerFile

W·2024년 2월 29일
0

BackEnd & Devops

목록 보기
12/13

Ref.
도커파일 작성하기

정의

도커 이미지를 생성하기 위한 스크립트 파일
여러 키워드를 사용하여 Dockerfile을 작성하여 빌드를 보다 쉽게 수행할 수 있다.

주요 키워드

  1. FROM
  • base가 되는 image를 지정. 주로 OS이미지나 런타임 이미지를 지정한다.
  1. RUN
  • 이미지를 빌드할 때 사용하는 커맨드를 설정할 때 사용한다.
  1. ADD
  • 이미지에 호스트의 파일이나 폴더를 추가하기 위해 사용. 만약 이미지에 복사하려는 디렉토리가 존재하지 않으면 docker가 자동으로 생성된다.
  1. COPY
  • 호스트 환경의 파일이나 폴더를 이미지 안으로 복사하기 위해 사용. ‘ADD’와 동일하게 동작하지만 가장 확실한 차이점은 URL을 지정하거나, 압축파일을 자동으로 풀지 않는다.
  1. EXPOSE
  • 이미지가 통신에 사용할 포트를 지정한다.
  1. ENV
  • 환경 변수를 지정할 때 사용한다.
  1. CMD
  • 컨테이너가 실행될때 실행할 커맨드를 지정. ‘RUN’과 비슷하지만 CMD는 도커 이미지를 빌드할 때 실행되는 것이 아니라 컨테이너를 시작할 때 실행된다는 것이 다른다.
  1. ENTRYPOINT
  • 도커 이미지가 실행될때 사용되는 기본 커맨드를 지정(강제)
  1. WORKDIR
  • RUN, CMD, ENTRYPOINT 등을 사용한 커맨드를 실행하는 디렉토리를 지정. -w 옵션으로 오버라이딩 할 수 있다.
  1. VOLUME
  • 퍼시스턴스 데이터를 저장할 경로를 지정할 때 사용. 호스트의 디렉토리를 도커 컨테이너에 연결. 주로 휘발성으로 사용되면 안되는 데이터를 저장할 때 사용한다.
  • 컨테이너를 지우고 재생성할때 데이터를 유지해야할 때 사용한다.

docker build 커맨드

Dockerfile을 실행하기 위해서는 docker build 커맨드를 사용한다.

docker build [option] [dockerfile directory]
ex) docekr build -t test .
-> test라는 이름의 이미지 생성됨
-> test 뒤에 . 은 Dockerfile의 경로
	 Dockerfile이라는 파일명일 경우에는 파일명이 생략 가능하지만,
	 그렇지 않다면 명시해줘야한다.

이렇게 생성된 이미지를 컨테이너로 실행 → run 커맨드 사용

docker run --name test_container -p 80:80 test
-> test라는 이름의 이미지를 test_container라는 
컨테이너이름으로 실행
profile
타협하는 순간 발전이 없어

0개의 댓글

Powered by GraphCDN, the GraphQL CDN