도커(Docker)

도커(이미지 생성 및 저장)

알럽유 2024. 1. 9. 16:51
728x90
반응형

도커 이미지 생성하기

똑같은 이미지에 설정을 추가하여 컨테이너를 가동해도 되지만

매번 같은 설정을 사용하고 있다면 그 설정을 가지고 있는 이미지를 생성하여 사용할 수 있음

 

주로 이미지를 생성하는 경우

1. 특정 이미지에 자주 사용하는 설정을 추가하여 편하게 사용하고 싶을 경우

2. 본인이 개발한 애플리케이션을 이미지로 생성하고 싶은 경우

 

컨테이너로 이미지 생성하기

첫 번째 방법으로 준비된  컨테이너를 이미지로 변경하는 방법이 있음

아래 그림과 같이 설정이 반영되어 있는 컨테이너를 그대로 이미지로 생성

 

이 작업을 수행하기 위해서는 컨테이너가 있는 상황에서 아래의 커맨드를 입력

- container_name: 이미지로 만들고자 하는 컨테이너의 이름

- image_name: 생성할 이미지의 이름

> docker commit {container_name} {image_name}

 

Dockerfile로 이미지 생성하기

또 다른 방법으로는 Dockerfile을 사용할 수 있음

Dockerfile에 추가하고자 하는 설정을 반영하고 그 파일로 이미지를 빌드

> docker build ${option} ${dockerfile directory}

 

도커 이미지 파일로 저장

이렇게 생성된 이미지는 파일로 저장할 수 있음

많이 사용하지 않지만, 대체로 운영서버에서 이미지를 사용해야할 때 종종 사용되기도 함

 

- save/load 커맨드

- export/import 커맨드

 

save와 load 커맨드를 사용하면 아래와 같이 동작함

save를 이용한 이미지를 저장은 원본 이미지와 레이어를 동일하게 가져가는 형식으로 동작함

 

save

- 도커 이미지를 tar 파일로 추출

- docker save -o test123.tar test123:latest

load

- 추출된 tar 파일을 이미지로 불러옴

- docker load -i test123.tar

 

export와 import 커맨드를 사용하면 아래와 같이 동작함

export를 이용한 이미지 저장은 원본 이미지와 다르게 하나의 레이어로 통합되어 추출됨

이렇게 추출된 이미지는 다시 컨테이너로 가동하기 위해서는 별도의 작업이 필요함

 

export

- 도커 컨테이너를 tar 파일로 추출

- docker export test123> test123.tar

import

- 추출된 tar 파일을 이미지로 불러옴

- docker import test123.tar test123:version