您好,登錄后才能下訂單哦!
這篇“在docker之間如何導(dǎo)出和導(dǎo)入鏡像”文章的知識點大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“在docker之間如何導(dǎo)出和導(dǎo)入鏡像”文章吧。
公司給的新機(jī)器的dns有問題,導(dǎo)致pull不下來鏡像。
沒辦法了,沒有鏡像什么神馬都干不了,又不能花很多時間去搭建私有的鏡像庫,只有另尋辦法了。
廢話少說,經(jīng)過探究,發(fā)現(xiàn) docker 提供把鏡像導(dǎo)出export
(保存save
)為文件的機(jī)制,這樣就可以把鏡像copy到任意地方了。
1. 導(dǎo)出 export - 導(dǎo)入 import
格式:docker export container(容器)
使用 docker ps -a 查看本機(jī)已有的容器,如:
我們使用容器 furious_bell,現(xiàn)在要將這個容器保存為一個文件 myunbuntu-export-1204.tar
docker export furious_bell > /home/myubuntu-export-1204.tar
導(dǎo)出完成后,就可以使用 import 導(dǎo)入了
docker import - /home/myubuntu-export-1204.tar
2.保存save - 加載 load
格式:docker save image(鏡像)
使用 docker images 查看本機(jī)已有的鏡像(也可以使用 docker commit <contain-id> <image-name>命令把一個正在運(yùn)行的容器保存為鏡像),如:
這里有個基礎(chǔ)鏡像:ubuntu:12.04,現(xiàn)在要將這個鏡像保存為一個文件myubuntu-save-1204.tar
docker save 9610cfc68e8d > /home/myubuntu-save-1204.tar
有點慢,稍微等待一下,沒有任何warn信息就表示保存ok。9610cfc68e8d 是鏡像id
現(xiàn)在就可以在任何裝 docker 的地方加載 剛保存的鏡像了
docker load < /home/myubuntu-save-1204.tar
3.導(dǎo)出 export 與 保存 save 的區(qū)別
(1).export導(dǎo)出的鏡像文件大小 小于 save保存的鏡像
(2).export 導(dǎo)出(import導(dǎo)入)是根據(jù)容器拿到的鏡像,再導(dǎo)入時會丟失鏡像所有的歷史,所以無法進(jìn)行回滾操作(docker tag <layer id> <image name>);而save保存(load加載)的鏡像,沒有丟失鏡像的歷史,可以回滾到之前的層(layer)。(查看方式:docker images --tree)
注:導(dǎo)入加載進(jìn)來覺得不合適可以使用 docker rm 容器id 、 docker rmi 鏡像id 來刪掉。
移除所有的容器和鏡像(大掃除):
復(fù)制代碼 代碼如下:
docker kill $(docker ps -q) ; docker rm $(docker ps -a -q) ; docker rmi $(docker images -q -a)
以上就是關(guān)于“在docker之間如何導(dǎo)出和導(dǎo)入鏡像”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對大家有幫助,若想了解更多相關(guān)的知識內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。