본문 바로가기
[Docker]

Dockerfile 빌드 및 이미지 레이어

by SAMSUNG Metaverse-Cloud 2023. 8. 31.
728x90

 

 

Dockerfile을 통해서 이미지 생성하기

 

dockerfile을 통해 이미지를 생성하면 dockerfile에 정의된 구성을 바탕으로 이미지가 생성된다.

dockerfile을 통해 이미지를 만들기 위해서는 아래와 같은 명령어를 사용해야 한다

docker build -t (이미지 명) : (태그명) (도커 파일 위치)

도커 파일을 통해 이미지를 만들기 위해서는 먼저 도커파일을 생성해야 한다.

우리는 가장 기본적인 도커파일로 nginx의 base를 가진 Dockerfile을 생성 할 것이다. 

 

 vi 편집기를 통해서 Dockerfile 이라는 파일을 편집 해 준다.

 

 

간단한 이미지를 만들 것이기 때문에 FROM 명령을 통해서 베이스가 될 이미지만을 선택 해 주었다.

이 파일을 통해서 이제 이미지로 생성 할 것이다. 

 

 

 

docker build -t 명령어와 이미지 이름과 태그를 추가하며,  도커 파일이 위치한 디렉토리 위치를 지정 해 주었다. 

 

 

이렇게 빌드가 성공적으로 끝난걸 확인할 수 있다. 

 

 

빌드가 끝난 후 docker images 명령어를 통해 이미지를 확인 해 보자

buildtest의 1.0의 태그를 가진 이미지를 확인할 수 있다. 

 

 

 

Docker 이미지 레이어

도커파일을 빌드해서 도커 이미지를 생성하면 도커파일의 명령별로 이미지 작성이 가능하다. 

도커이미지는 도커 컨테이너를 생성하기 위한 정보를 가지고 있다. 

도커의 이미지의 크기는 수백메가인 경우가 많다. 

이는 처음 이미지를 다운로드 하거나 작성할 때 그렇다.

하지만 이미지를 한번 생성하면 계속 가지고 있기에 다음 버전으로 업데이트되는 등의 수정이 생기더라도 새로운 이미지를 다운하는게 아닌 레이어의 개념이 있기에 한개의 층이 쌓이게 되고 이를 하나의 시스템처럼 사용할 수 있다는 것이다. 

 

nginx 의 1.15.1 버전을 먼저 다운로드 해 주었다.

이미지를 다운로드 하는 과정을 보면 총 3단계에서 PULL 하는 것을 확인할 수 있다.

 

그 이후 그보다 한단계 상위버전인 1.15.2 버전을 다운로드 해 주면

기존 1.15.1에서 다운로드를 진행했던 층은 이미 존재하기에 넘어가게 되고 그 다음부분부터 다운로드가 되게 된다. 

 

 

728x90

댓글