首頁 > 軟體

Docker 映象匯入匯出過程介紹

2022-04-07 13:00:30

docker save

說明:將指定映象儲存成 tar 歸檔檔案,以tar和tar.gz結尾都行。

語法:

docker save [OPTIONS] IMAGE [IMAGE...]

OPTIONS 說明:

  • -o :輸出到的檔案。
[root@harbor tmp]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
redis v1 cc6cf492f595 6 hours ago 113MB
busybox latest beae173ccac6 3 months ago 1.24MB
nginx latest 605c77e624dd 3 months ago 141MB
redis latest 7614ae9453d1 3 months ago 113MB
[root@harbor tmp]# docker save -o nginx.tar nginx:latest
[root@harbor tmp]# ls
nginx.tar
[root@harbor tmp]# docker save -o nginx.tar.gz nginx:latest
[root@harbor tmp]# ls
nginx.tar nginx.tar.gz

docker load

說明:匯入使用 ​ ​docker save​​ 命令匯出的映象。

語法:

docker load [OPTIONS]

OPTIONS 說明:

  • --input , -i :指定匯入的檔案,代替 STDIN。
  • --quiet , -q :精簡輸出資訊。

以tar.gz結尾映象包匯入

[root@harbor tmp]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
redis latest 7614ae9453d1 3 months ago 113MB
[root@harbor tmp]# docker load < nginx.tar.gz
e379e8aedd4d: Loading layer [==================================================>] 62MB/62MB
b8d6e692a25e: Loading layer [==================================================>] 3.072kB/3.072kB
f1db227348d0: Loading layer [==================================================>] 4.096kB/4.096kB
32ce5f6a5106: Loading layer [==================================================>] 3.584kB/3.584kB
d874fd2bc83b: Loading layer [==================================================>] 7.168kB/7.168kB
Loaded image: nginx:latest
[root@harbor tmp]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest 605c77e624dd 3 months ago 141MB
redis latest 7614ae9453d1 3 months ago 113MB

以tar結尾映象包匯入

[root@harbor tmp]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
redis latest 7614ae9453d1 3 months ago 113MB
[root@harbor tmp]# docker load < nginx.tar
e379e8aedd4d: Loading layer [==================================================>] 62MB/62MB
b8d6e692a25e: Loading layer [==================================================>] 3.072kB/3.072kB
f1db227348d0: Loading layer [==================================================>] 4.096kB/4.096kB
32ce5f6a5106: Loading layer [==================================================>] 3.584kB/3.584kB
d874fd2bc83b: Loading layer [==================================================>] 7.168kB/7.168kB
Loaded image: nginx:latest
[root@harbor tmp]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
nginx latest 605c77e624dd 3 months ago 141MB
redis latest 7614ae9453d1 3 months ago 113MB

Docker export 命令

說明:將指定執行或停止的容器匯出為tar包。

語法:

docker export [OPTIONS] CONTAINER

OPTIONS說明:

  • -o :將輸入內容寫到檔案。

使用redis:latest映象執行一個docker redis容器。

[root@harbor tmp]# docker run -d --name redis redis:latest
00bd9bf582ffdf7dc89793252de9b663ce5b685061bb3652d167924270bed423
[root@harbor tmp]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
00bd9bf582ff redis:latest "docker-entrypoint.s…" 3 seconds ago Up 2 seconds 6379/tcp redis

將執行中的redis容器匯出稱為redis.tar.gz包。

[root@harbor tmp]# docker export -o redis.tar.gz redis
[root@harbor tmp]# ls
nginx.tar nginx.tar.gz redis.tar.gz

停止redis容器

[root@harbor tmp]# docker stop redis
redis

將已經停止的redis容器匯出為redis1.tzr.gz包

[root@harbor tmp]# docker export -o redis1.tar.gz redis
[root@harbor tmp]# ls
nginx.tar nginx.tar.gz redis1.tar.gz redis.tar.gz

Docker import

說明:從 tar包匯入內容以docker 映象。

語法

docker import [OPTIONS] file|URL|- [REPOSITORY[:TAG]]

OPTIONS說明:

  • -c :應用docker 指令建立映象;
  • -m :提交時的說明文字

您可以指定一個​​URL​​或​​-​​(破折號)直接從​​STDIN​​. ​​URL​​可以指向包含檔案系統的存檔(.tar、.tar.gz、.tgz、.bzip、.tar.xz 或 .txz)或 Docker 主機上的單個檔案。 如果你指定一個存檔,Docker 會在相對於​​/​​ (root) 的容器中解壓它。如果指定單個檔案,則必須指定主機內的完整路徑。要從遠端位置匯入,請指定以or協定​​URI​​開頭的 a。​​http://​​​​https://​

[root@harbor tmp]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
redis latest 7614ae9453d1 3 months ago 113MB
[root@harbor tmp]# docker import redis1.tar.gz redis:v1
sha256:07d6e5a00daa386ed5117d7bf7751f74b46f5831aea69036580cd509bb6781e7
[root@harbor tmp]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
redis v1 07d6e5a00daa 2 seconds ago 109MB
redis latest 7614ae9453d1 3 months ago 113MB

通過url匯出映象

docker import https://example.com/exampleimage.tgz

到此這篇關於Docker 映象匯入匯出過程介紹的文章就介紹到這了,更多相關Docker 映象匯入匯出內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!


IT145.com E-mail:sddin#qq.com