1、使用docker images查看本機(jī)所有的鏡像文件
2、docker save eb40dcf64078> /root/mydjango-save-1016.tar 將鏡像保存為本地文件,其中eb40dcf64078為image id
3、將保存到本地的文件上傳到不能pull的服務(wù)器上,網(wǎng)絡(luò)是相通的我這里直接使用的是scp命令
4、使用load方法加載剛才上傳的tar文件
docker load < /root/mydjango-save-1016.tar
5、在新的機(jī)器上再此使用docker images命令查看本機(jī)的鏡像,檢查剛才load的鏡像有沒(méi)有加載進(jìn)來(lái),發(fā)現(xiàn)加載進(jìn)來(lái)的鏡像名稱、標(biāo)簽均為none,使用docker tag eb40dcf64078 django:latest 修改為原來(lái)的鏡像名稱和標(biāo)簽名稱,其中eb40dcf64078 為images id
6、使用docker run -itd django:latest加載進(jìn)行,驗(yàn)證鏡像是否能夠成功的“run”
補(bǔ)充知識(shí):docker鏡像導(dǎo)入導(dǎo)出,鏡像的重命名.可用于離線部署docker應(yīng)用
導(dǎo)出鏡像
docker images查看鏡像id和名字
使用imageId導(dǎo)出(不推薦)
docker save -o fileName.tar imageId
不過(guò)我發(fā)現(xiàn)一個(gè)問(wèn)題就是使用imageId導(dǎo)出來(lái)的鏡像,在導(dǎo)入的時(shí)候倉(cāng)庫(kù)和名字都是none.但是當(dāng)使用鏡像名字導(dǎo)出后再導(dǎo)入就不過(guò)出現(xiàn)none了.
出現(xiàn)這樣錯(cuò)誤的原因是在docker load 的時(shí)候會(huì)將同名image覆蓋,并將原有鏡像重命名,也就出現(xiàn)了上圖所示問(wèn)題。
重命名鏡像的方法:
docker tag [鏡像id] [新鏡像名稱]:[新鏡像標(biāo)簽]
demo
docker tag 6982b35ff928 zookeeper
使用imageName導(dǎo)出(推薦)
docker save -o ./fileName.tar imageName
demo
docker save -o ./portainer.tar portainer/portainer
導(dǎo)入鏡像
docker load -i < ./fileName.tar
demo
以上這篇docker 打包本地鏡像,并到其他機(jī)器進(jìn)行恢復(fù)操作就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。