Docker 이미지를 파일로 저장(Save)하고 불러오는(Load) 방법
Docker 이미지는 파일 형태로 저장하여 다른 서버로 이동하거나 백업할 수 있습니다.
- docker save : Docker 이미지를 tar 파일로 저장
- docker load : tar 파일에서 Docker 이미지 복원
1. 저장된 Docker 이미지 확인 (docker111 서버)
현재 서버에 저장된 Docker 이미지 목록을 확인합니다.
docker images
root@docker111:container$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
fluentd latest c585932afaee 6 weeks ago 52.3MB
fluentd:latest 이미지를 저장합니다.
2. Docker 이미지 파일로 저장 (Save)
Docker 이미지를 파일로 저장하려면 docker save 명령어를 사용합니다.
기본 명령어
docker save -o <파일명>.tar <이미지명:태그>
예제
docker save -o fluentd.tar fluentd:latest
실행 예시
root@docker111:container$ docker save -o fluentd.tar fluentd:latest
명령 실행 후 현재 디렉토리에 다음 파일이 생성됩니다.
fluentd.tar
이 파일은 Docker 이미지를 포함한 tar 아카이브 파일입니다.
3. Docker 이미지 파일 서버 전송(docker111 → docker222)
생성된 이미지 파일을 다른 서버로 전송합니다.
예제에서는 ssh와 tar를 이용하여 파일을 전달합니다.
tar cfz - ./fluentd.tar | ssh root@222.222.222.222 "(cd /docker-container/; tar xfz -)"
실행 예시
root@docker111:container$ tar cfz - ./fluentd.tar | ssh root@222.222.222.222 "(cd /docker-container/; tar xfz -)"
전송이 완료되면 docker222 서버의 /docker-container 디렉토리에 fluentd.tar 파일이 생성됩니다.
4. Docker 이미지 불러오기 (Load)
다른 서버에서 tar 파일로 저장된 Docker 이미지를 불러오려면 docker load 명령어를 사용합니다.
기본 명령어
docker load -i <이미지파일>.tar
예제
docker load -i fluentd.tar
실행 예시
root@docker222:docker-container$ docker load -i fluentd.tar
b2d5eeeaba3a: Loading layer [==================================================>] 5.88MB/5.88MB
d2bdf0b61a14: Loading layer [==================================================>] 50.64MB/50.64MB
229b7f8656d3: Loading layer [==================================================>] 14.85kB/14.85kB
c056f770bdaf: Loading layer [==================================================>] 3.072kB/3.072kB
1b4269e9e06c: Loading layer [==================================================>] 3.072kB/3.072kB
bff4076ae320: Loading layer [==================================================>] 3.072kB/3.072kB
Loaded image: fluentd:latest
5. 이미지 정상 로드 확인 (docker222 서버)
이미지가 정상적으로 로드되었는지 확인합니다.
docker images
root@docker222:docker-container$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
fluentd latest c585932afaee 6 weeks ago 52.3MB
docker111 서버에 있던 이미지와 동일한 이미지가 docker222 서버에 로드된 것을 확인할 수 있습니다.
실무에서 많이 사용하는 전송 방법
SCP로 전송
scp fluentd.tar root@222.222.222.222:/docker-container/
압축해서 전송
docker save fluentd:latest | gzip > fluentd.tar.gz
복원
gunzip -c fluentd.tar.gz | docker load
참고URL
- https://docs.docker.com/engine/reference/commandline/save/
- https://docs.docker.com/engine/reference/commandline/load/
'리눅스' 카테고리의 다른 글
| [draft] 우분투에서 cron 작업 로그를 별도의 파일로 분리하는 방법 (0) | 2026.03.11 |
|---|---|
| [draft] docker inspect 명령어 (0) | 2026.03.11 |
| [draft] Spring Boot 프로젝트 생성 및 Gradle로 빌드하기 (0) | 2026.03.11 |
| [draft] CentOS 7에서 Gradle을 설치하는 방법 (0) | 2026.03.11 |
| [draft] Docker rmi 명령어 (0) | 2026.03.10 |