Docker

[Docker] 도커 이미지 조작

ozofweird 2020. 11. 20. 01:52

1. 도커 이미지 조작

1) 이미지 작성

sudo docker container commit [옵션] [컨테이너 식별자] [이미지명:태그명]

// 이미지 확인
sudo docker image inspect [이미지명:태그명]
옵션 설명
--author, -a 작성자를 지정한다.
--message, -m 메시지를 지정한다.
--change, -c 커밋 시 Dockerfile 명령을 지정한다.
--pause, -p 컨테이너를 일시 정지 후 커밋한다.

2) 컨테이너 tar 파일 출력

도커에서는 컨테이너의 디렉토리 및 파일을 모아 tar 파일로 압축할 수 있다. 압축된 파일로 다른 서버에 컨테이너를 가동시킬 수 있다.

sudo docker container export [컨테이너 식별자]

3) tar 파일로 이미지 작성

도커 이미지를 import 명령어로 Linux OS 이미지의 디렉토리 및 파일로부터 도커 이미지를 만들 수 있다. 명령에서 지정할 수 있는 파일은 하나뿐이며 액세스 권한이 없는 파일이 포함되지 않는 경우가 발생하기에 주의해야한다. import 가능한 아카이브 파일은 tar, tar.gz, tgz, bzip, tar.xz, txz가 있다.

sudo docker image import [파일 및 URL | - 이미지명:태그명]

4) 이미지 저장

도커 이미지는 save 명령어로 간단하게 저장할 수 있다.

sudo docker image save [옵션] [저장 파일명] [이미지명]

5) 이미지 읽어 들이기

tar 이미지로부터 이미지를 load 명령어로 읽어들일 수 있다. 읽어 들일 파일명은 -i 옵션으로 지정한다.

sudo docker image load [옵션] [tar파일]

6) 불필요한 이미지 및 컨테이너 일괄 삭제

사용하지 않는 이미지, 컨테이너, 볼륨, 네트워크를 일괄적으로 prune 명령어로 삭제할 수 있다.

sudo docker system prune [옵션]
옵션 설명
--all, -a 사용하지 않는 리소스 모두 삭제한다.
--force, -f 강제로 삭제한다.

※ 이미지 작성 시 사용하는 명령어에 따라 압축된 내부적인 디렉토리 및 파일의 구조가 다르기 때문에 export 명령으로 압축할 경우 import로, save 명령으로 압축할 경우 load 명령어로 사용해야한다.


[참고] 완벽한 IT 인프라 구축을 위한 Docker (2판)

728x90