Study_note
[Docker] 도커파일 본문
도커 파일이란?
컨테이너에 설치해야 하는 패키지, 명령어, 변수 설정 등을 작성한 파일이다. 빌드하면 자동으로 이미지가 생성되고 애플리케이션 빌드 및 배포를 자동화할 수 있게 됩니다.
docker build -t 생성될 이미지 -f 도커 파일이 저장된 경로
다음과 같은 도커 파일을 만들고 도커 파일을 사용해서 배포하면 아래와 같다
배포할 때는 스텝마다 임시 컨테이너가 생성되고 그 안에서 다음단계인 이미지가 생성된 후 컨테이너를 커밋하고 이미지와 컨테이너는 하나의 컨테이너가 된다 그 후 새로운 생성됐던 컨테이너 올라가고 다시 이미지가 추가되고 커밋하는 형식이다
아래 명령어를 입력하면 파일 안에 명령어 순서대로 실행되고 ls 명령어 시 생성된 것을 확인할 수 있다
docker build -t ubuntu -f Dockerfile.1 . (. 현재 위치)
ENTRYPOINT - 도커 파일 빌드에서 빌드된 이미지로부터 컨테이너가 시작될 때 실행할 작업을 의미, CMD와 같이 사용될 시 ENTRYPOINT가 인수형태로 먼저 해석되어진다
CMD - 생성된 이미지를 바탕으로 컨테이너 내부에서 수행될 작업이나 명령
RUN - shell 형식 기술 = 쉘 프롬프트에 명령을 기술하는 방식
- exec 형식 기술 = 쉘을 경유하지 않고 직접 실행
ENV - 도커 파일 안에서 환경 변수를 설정
EXPOSE - 컨테이너의 공개 포트를 지정한다
ADD - 호스트의 파일이나 디렉터리를 이미지에 추가할 때 사용
COPY랑은 기능적으로 같은 역할 ADD는 URL 및 tar 파일에서도 파일을 추가할 수 있습니다.
VOLUME - 호스트와 공유할 컨테이너 내부의 디렉터리 설정
env
ENV myName "test"
ENV myNumber 999
ENTRTPOINT
ENTRTPOINT ["/bin/ping", "localhost"]
run
RUN ["/bin/bash", "-c", "echo hello > test2.html"]
ADD
ADD 파일 저장할디렉토리
VOLUME
VOLUME /home/volumn
'Docker' 카테고리의 다른 글
[Docker] 도커 이미지 관리 명령어 ( pull, push ,commit 등 ) (0) | 2021.11.21 |
---|---|
[Docker] 도커 네트워크 - Bridged Network (0) | 2021.11.21 |
[Docker] 도커 볼륨 Named Volume (0) | 2021.11.19 |
[Docker] 기본 도커 명령어 (0) | 2021.11.19 |
[Docker] 컨테이너 기반 기술_ Overlay2 (0) | 2021.11.18 |