溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

在 docker 之間導出導入鏡像的方法

發布時間:2020-09-11 17:06:23 來源:腳本之家 閱讀:198 作者:a906998248 欄目:服務器

很喜歡玩docker,但最新遇到一個問題,公司給的新機器的dns有問題,導致pull不下來鏡像。

在 docker 之間導出導入鏡像的方法

沒辦法了,沒有鏡像什么神馬都干不了,又不能花很多時間去搭建私有的鏡像庫,只有另尋辦法了。

廢話少說,經過探究,發現 docker 提供把鏡像導出export(保存save)為文件的機制,這樣就可以把鏡像copy到任意地方了。

1. 導出 export - 導入 import

格式:docker export CONTAINER(容器)

使用 docker ps -a 查看本機已有的容器,如:

在 docker 之間導出導入鏡像的方法

我們使用容器 furious_bell,現在要將這個容器保存為一個文件 myunbuntu-export-1204.tar

docker export furious_bell > /home/myubuntu-export-1204.tar 

導出完成后,就可以使用 import 導入了

docker import - /home/myubuntu-export-1204.tar 

2.保存save - 加載 load

格式:docker save IMAGE(鏡像)

使用 docker images 查看本機已有的鏡像(也可以使用 docker commit <CONTAIN-ID> <IMAGE-NAME>命令把一個正在運行的容器保存為鏡像),如:

在 docker 之間導出導入鏡像的方法

這里有個基礎鏡像:ubuntu:12.04,現在要將這個鏡像保存為一個文件myubuntu-save-1204.tar

docker save 9610cfc68e8d > /home/myubuntu-save-1204.tar 

有點慢,稍微等待一下,沒有任何warn信息就表示保存OK。9610cfc68e8d 是鏡像ID

現在就可以在任何裝 docker 的地方加載 剛保存的鏡像了

docker load < /home/myubuntu-save-1204.tar

3.導出 export 與 保存 save 的區別

 (1).export導出的鏡像文件大小  小于 save保存的鏡像

 (2).export 導出(import導入)是根據容器拿到的鏡像,再導入時會丟失鏡像所有的歷史,所以無法進行回滾操作(docker tag <LAYER ID> <IMAGE NAME>);而save保存(load加載)的鏡像,沒有丟失鏡像的歷史,可以回滾到之前的層(layer)。(查看方式:docker images --tree)

注:導入加載進來覺得不合適可以使用 docker rm 容器ID 、 docker rmi 鏡像ID 來刪掉。

移除所有的容器和鏡像(大掃除):

復制代碼 代碼如下:

docker kill $(docker ps -q) ; docker rm $(docker ps -a -q) ; docker rmi $(docker images -q -a)  

參考:

http://www.tuicool.com/articles/emYVRzv

http://my.oschina.net/zjzhai/blog/225112

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女