docker 打包本地镜像,并到其他机器进行恢复操作

时间:2021-11-07 04:41:56

1、使用dockerimages查看本机所有的镜像文件

docker 打包本地镜像,并到其他机器进行恢复操作

2、dockersaveeb40dcf64078>/root/mydjango-save-1016.tar将镜像保存为本地文件,其中eb40dcf64078为imageid

docker 打包本地镜像,并到其他机器进行恢复操作

3、将保存到本地的文件上传到不能pull的服务器上,网络是相通的我这里直接使用的是scp命令

docker 打包本地镜像,并到其他机器进行恢复操作

4、使用load方法加载刚才上传的tar文件

dockerload</root/mydjango-save-1016.tar

docker 打包本地镜像,并到其他机器进行恢复操作

5、在新的机器上再此使用dockerimages命令查看本机的镜像,检查刚才load的镜像有没有加载进来,发现加载进来的镜像名称、标签均为none,使用dockertageb40dcf64078django:latest修改为原来的镜像名称和标签名称,其中eb40dcf64078为imagesid

docker 打包本地镜像,并到其他机器进行恢复操作

6、使用dockerrun-itddjango:latest加载进行,验证镜像是否能够成功的“run”

docker 打包本地镜像,并到其他机器进行恢复操作

补充知识:docker镜像导入导出,镜像的重命名.可用于离线部署docker应用

导出镜像

dockerimages查看镜像id和名字

使用imageId导出(不推荐)

dockersave-ofileName.tarimageId

不过我发现一个问题就是使用imageId导出来的镜像,在导入的时候仓库和名字都是none.但是当使用镜像名字导出后再导入就不过出现none了.

出现这样错误的原因是在dockerload的时候会将同名image覆盖,并将原有镜像重命名,也就出现了上图所示问题。

重命名镜像的方法:

dockertag[镜像id][新镜像名称]:[新镜像标签]

demo

dockertag6982b35ff928zookeeper

docker 打包本地镜像,并到其他机器进行恢复操作

使用imageName导出(推荐)

dockersave-o./fileName.tarimageName

demo

dockersave-o./portainer.tarportainer/portainer

docker 打包本地镜像,并到其他机器进行恢复操作

导入镜像

dockerload-i<./fileName.tar

demo

docker 打包本地镜像,并到其他机器进行恢复操作

以上这篇docker打包本地镜像,并到其他机器进行恢复操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://jingyan.baidu.com/article/ce436649379e0a3772afd354.html