[Docker] 도커 이미지 파일로 저장하기!

2024. 7. 3.·Server/Docker
목차
  1. 1. docker save (docker image -> tar)
  2. 2. docker load (tar -> docker image)
  3. 3. docker export (docker container -> tar)
  4. 4. docker import (tar -> docker image)
  5. (중요) export - import 와 save - load의 차이
반응형

 

docker 이미지 - 컨테이너를 파일로 만들기

 

docker build나 commit으로 만들어진 이미지는

일반적으로 docker hub와 같은 registry에 push되고, 이를 다시 pull 받는 방식으로 사용된다.

하지만, 간혹 docker 이미지를 registry를 거치지 않고 이동해야 할 때가 있다.

이럴 때 사용자는 docker 이미지 혹은 컨테이너를 tar파일로 만들 수 있다.

1. docker save (docker image -> tar)

docker 이미지를 tar파일로 저장하기 위해서는 docker save 커맨드를 사용한다.

현재 이미지 목록

root@gg:/home/gg/testdocker# docker images -a
REPOSITORY TAG IMAGE ID CREATED SIZE
tcont2 latest 6c8d36029e74 47 minutes ago 2.72GB
<none> <none> f5334d761b9c 8 days ago 404MB

이미지 tar 로 저장

  1. 이미지명으로 (tag 들어가야)
  2. docker save -o img.tar tcont2:latest #docker save [옵션] <파일명> 이미지명:태그
  3. 이미지 아이디로

2. docker load (tar -> docker image)

tar파일로 만들어진 이미지를 다시 docker image로 되돌리기 위해서는 docker load 커맨드를 사용한다.

docker load -i tar파일명

3. docker export (docker container -> tar)

docker는 이미지 뿐 아니라 container를 tar파일로 저장하는 명령어를 제공한다.

docker export <컨테이너명 or 컨테이너ID> > xxx.tar

4. docker import (tar -> docker image)

export 커맨드를 통해 만들어진 tar 파일을 다시 docker image로 생성하는 명령어이다.

docker import <파일 or URL> - [image name[:tag name]]

root 권한으로 실행하지 않을 경우, 액세스 권한이 없는 파일들이 포함되지 않는 문제가 발생할 수 있다.

(중요) export - import 와 save - load의 차이

docker export의 경우 컨테이너를 동작하는데 필요한 모든 파일이 압축된다. 즉, tar파일에 컨테이너의 루트 파일시스템 전체가 들어있는 것이다. 반면에 docker save는 레이어 구조까지 포함한 형태로 압축이 된다.

즉, 기반이 되는 이미지가 같더라도 export와 save는 압축되는 파일 구조와 디렉터리가 다르다.

export를 통해 생성한 tar 파일은 import로, save로 생성한 파일은 load로 이미지화 해야 함

출처

반응형
저작자표시 (새창열림)

'Server > Docker' 카테고리의 다른 글

[Docker] 기본 명령어 정리  (0) 2024.05.16
[Docker] 도커에 톰캣 war 실행  (1) 2024.05.16
  1. 1. docker save (docker image -> tar)
  2. 2. docker load (tar -> docker image)
  3. 3. docker export (docker container -> tar)
  4. 4. docker import (tar -> docker image)
  5. (중요) export - import 와 save - load의 차이
'Server/Docker' 카테고리의 다른 글
  • [Docker] 기본 명령어 정리
  • [Docker] 도커에 톰캣 war 실행
keartt
keartt
shalpha_2@naver.com
주니어 탈출일기 🐽
shalpha_2@naver.com
  • keartt
전체
오늘
어제
  • 전체보기
    • CS & 알고리즘
      • CS (컴과학)
      • 알고리즘
      • 백준
    • Spring
      • SpringBoot (JPA)
      • Spring (Legacy)
    • Server
      • Linux
      • Docker
    • Java
      • Design Pattern
    • PostgreSQL
    • GIS (공간정보)
    • 오류정리
    • Git
    • JavaScript
      • Node.js
      • React
    • Tool
      • IntelliJ
      • MacOS
      • VSCode
      • Eclipse
      • Other
    • 강의정리들
      • [2023] FullStack
      • [2022] Spring Boot
      • [2021] Spring Boot

인기 글

태그

브루트포스
구간합
이분탐색
코딩애플
반응형
hELLO· Designed By정상우.v4.6.1
keartt
[Docker] 도커 이미지 파일로 저장하기!

개인정보

kearttshalpha_2@naver.com계정관리

운영중인 블로그

주니어 탈출일기쓰기블로그 관리

이동링크목록

  • 티스토리 홈
  • 피드
  • 로그아웃
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.