1、使用dockerimages查看本机所有的镜像文件
2、dockersaveeb40dcf64078>/root/mydjango-save-1016.tar将镜像保存为本地文件,其中eb40dcf64078为imageid
3、将保存到本地的文件上传到不能pull的服务器上,网络是相通的我这里直接使用的是scp命令
4、使用load方法加载刚才上传的tar文件
dockerload</root/mydjango-save-1016.tar
5、在新的机器上再此使用dockerimages命令查看本机的镜像,检查刚才load的镜像有没有加载进来,发现加载进来的镜像名称、标签均为none,使用dockertageb40dcf64078django:latest修改为原来的镜像名称和标签名称,其中eb40dcf64078为imagesid
6、使用dockerrun-itddjango:latest加载进行,验证镜像是否能够成功的“run”
补充知识:docker镜像导入导出,镜像的重命名.可用于离线部署docker应用
导出镜像
dockerimages查看镜像id和名字
使用imageId导出(不推荐)
dockersave-ofileName.tarimageId
不过我发现一个问题就是使用imageId导出来的镜像,在导入的时候仓库和名字都是none.但是当使用镜像名字导出后再导入就不过出现none了.
出现这样错误的原因是在dockerload的时候会将同名image覆盖,并将原有镜像重命名,也就出现了上图所示问题。
重命名镜像的方法:
dockertag[镜像id][新镜像名称]:[新镜像标签]
demo
dockertag6982b35ff928zookeeper
使用imageName导出(推荐)
dockersave-o./fileName.tarimageName
demo
dockersave-o./portainer.tarportainer/portainer
导入镜像
dockerload-i<./fileName.tar
demo
以上这篇docker打包本地镜像,并到其他机器进行恢复操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://jingyan.baidu.com/article/ce436649379e0a3772afd354.html