人生襍多

docker 이미지 백업 방법 본문

IT 유용한 TIP

docker 이미지 백업 방법

이혁진 2019. 5. 14. 21:23

1. 컨테이너 중 하나를 이미지로 백업 (commit)

$ docker commit <옵션> <컨테이너 이름> <이미지 이름>:<태그>

 

예시 

$ docker commit testu ubuntutest:16.04   

2. 이미지를 파일로 백업하기 (save)

$ docker save -o [저장할이름].tar [이미지 이름]

 

예시 
$ docker save -o ubuntu_1604.tar ubuntutest:16.04

   

3. 백업된 파일로 이미지를 복원하기 (load)

$ docker load < [백업한 파일이름].tar

 

예시 

$ docker load <   ubuntu_1604.tar # 복원하기
$ docker images   # 확인하기

 

4. 사용중인 docker 컨테이너에서 변경되는 데이터 실시간 백업 

 

- 데이터 볼륨을 사용하는 방법을 활용

우선 호스트 PC에서 적절한 폴더를 하나 생성해 줍니다. /home/dockerdata/mysql 이라고 해봅니다.
그리고 mysql 이미지를 설치 합니다.

$ docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=적절한암호 --name mysqltest -v /home/dockerdata/mysql:/var/lib/mysql mysql:8.0

<-- 핵심은 -v /home/dockerdata/mysql:/var/lib/mysql 으로 컨테이너의 /var/lib/mysql를 /home/dockerdata/mysql 에거 마운트 하면서 컨테이너를 올린다는 이야기 입니다.

 

---------

 

https://hub.docker.com/

 

이미지 검색

Docker 이미지는 다음 명령어를 이용해서 검색할 수 있습니다.

$ docker search <image name> ex) docker search ubuntu

 

이미지 다운로드

pull 명령어를 이용해서 원하는 이미지를 다운로드할 수 있습니다. 이미지 이름 뒤의 <tag>를 이용하여 원하는 버전의 이미지를 다운로드할 수 있으며, 생략할 경우 기본값으로 latest 태그가 입력됩니다.

$ docker pull <image name>:<tag> ex) docker pull ubuntu

또는 run 명령어를 이용해서 원하는 이미지를 다운로드하면서 해당 이미지의 컨테이너를 실행할 수 있습니다. run 명령어는 로컬에 이미지가 있을 경우 해당 이미지로부터 컨테이너를 생성하며, 로컬에 이미지가 없을 경우 이미지를 다운로드합니다.

$ docker run -i -t --name <container name> <image name> ex) docker run -i -t --name hello ubuntu

 

이미지 리스트 조회

docker images 명령어를 이용해서 로컬에 설치된 이미지 리스트를 확인할 수 있습니다.

$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE ubuntu latest 0458a4468cbc 10 days ago 112MB hello-world latest f2a91732366c 2 months ago 1.85kB

 

이미지 삭제

이미지 삭제는 rmi 명령어를 이용합니다.

$ docker rmi <image name>:<tag> ex) docker rmi ubuntu:latest

Comments