Notice
Recent Posts
Recent Comments
Link
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

Study_note

[Docker] 도커파일 본문

Docker

[Docker] 도커파일

Study_note 2021. 11. 22. 02:17

도커 파일이란?

컨테이너에 설치해야 하는 패키지, 명령어, 변수 설정 등을 작성한 파일이다. 빌드하면 자동으로 이미지가 생성되고 애플리케이션 빌드 및 배포를 자동화할 수 있게 됩니다.

 

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

 

Comments