본문 바로가기
DevOps/Docker

Dockerfile부터 push까지

by oncerun 2021. 2. 20.
반응형

 

도커 이미지는 여러 계층으로 구성되어 있기 때문인데, 각 계층은 읽기 전용 파일 시스템에 있다.

 

각 층은 도커 파일에 있는 명령마다 생성되며 이전 계층 위에 위치하게 된다.

이미지가 컨테이너로 만들어지면, 도커 엔진은 이미지를 받아서 읽기 쓰기가 가능한 파일 시스템 위에 추가한다.

 

도커 파일에 RUN 명령이 여러 개라면 여러 개의 임시 컨테이너가 생성되고 사라지는 걸 볼 수 있을 것이다.

불필요한 계층들이 이미지를 크게 만들고 있기 때문에 대다수 도커 파일이 &&연산자를 활용해 하나의 RUN 명령 안에 작성하는 것이다.

 

ENTRYPOINT 도커 파일 설정은 docker run 명령으로 전달되는 모든 인자를 처리하기 위해서 사용되는 실행 파일을 명시할 수 있도록 해준다. 위치에 설정에 주의하자.

 

COPY 설정은 호스트에 있는 파일을 이미지의 파일 시스템으로 복사하는 작업을 수행한다.

 첫 번째 인자는 호스트에 있는 파일을, 두 번째인 자는 복사될 대상 경로를 의미한다.

그럼 호스트파일을 가지고 해당 이미지가 만들어지게 된다.

 

만들어진도커 파일로 컨테이너를 실행해보자.

Registry : 이미지를 운영하고 배포하는 역할을 담당하는 서비스이며 기본은 도커 허브이다.

 

Repository : 관련된 이미지들의 집합

 

Tag : 저장소에 있는 이미지에 붙여진 구분자 

 

docker pull /push 명령을 이용한다.

 

dockerfile을 저장소에 올리기 전에 MAINTAINER 설정을 추가하여 이미지의 제작자와 연락처를 설정할 수 있다.

 

 

이제 만든 이미지를 도커 허브에 배포할 것이다.

docker login 을통해 로그인하고

도커의 tag명령어를 이용하여 기존에 만든 이미지에 추가로 이름을 지어줄 수 있습니다.

docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE [:TAG]

 

이제 push 해보자.

업로드가 다되면 다른 사람이 pull 해서 받을 수 있게 된다.

 

반응형

'DevOps > Docker' 카테고리의 다른 글

window 10 wsl2 도커 완벽 설치가이드  (0) 2022.12.25
Docker 공식 이미지 가져오기  (0) 2021.02.20
Docker 시작  (0) 2021.02.20
Docker(2)  (0) 2021.02.10
Docker(1)  (0) 2021.02.10

댓글