这篇文章将为大家详细讲解有关码头工人图像本地迁移的案例,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
最近在学习码头工人,经常遇到的一个问题是,在下载码头工人形象的时候,由于众所周知的网络原因导致失败,虽然网上也有很多解决方案,比如使用码头工人中心镜之类的国内镜像服务,不过由于个人原因(侥幸有一台国外的VM),我更倾向于不通过码头工人注册表共享下载的形象。
问题很明确:
不通过码头工人注册表,将一个机器上的码头工人形象共享给其他机器,即码头工人镜像本地迁移。
方案也很简单:
使用码头工人的保存和加载命令,具体步骤如下
1。在一个机器上列出所有的码头工人的形象,并找到你要保存的图片名
sudo docker 图片
2。在一个机器上使用码头工人保住命令,保存图像为焦油文件
sudo docker 节省;image_name -o file_path
其中,image_name替换为第一步里找到的要保存的图片名.file_path是导出的焦油文件路径,比如/home/tmp/image1.tar
3。将导出焦油的图像文件传到其他机器,如机器b可以使用各种方式,比如scp之类的,在这里不详述了。
4。在需要使用形象的机器上(如B机器)使用码头工人负载命令加载图像焦油文件
sudo docker load 小姐;file_path
注:另外,也可以使用码头工人的导出和导入命令实现类似功能,关于出口/保存导入/负载的区别,可以自己上网查,在此不做展开了。
基本区别就是出口出来的是容器(无历史和层信息),而拯救出来的是图像(具有完整的历史和层信息,支持层回滚)
<强>补充:码头工人的镜像的备份与迁移强>
第一步:
使用码头工人ps -命令查看所有的容器
[root@localhost ~] #, docker ps -a CONTAINER ID , IMAGE ,,, COMMAND ,,,, CREATED ,,, STATUS ,,,,, PORTS ,,名字 9505 a10e6d29 , nginx ,,,“nginx -g & # 39; daemon 的…“,34,minutes ago , Exited (0), 8, minutes ago ,,,, mynginx 4 c89fff9ac8c , mysql: 5.6,,,“docker-entrypoint.s…“, 11, days ago ,, Exited (0), 11, days ago ,,,,, mymysql 0 abefefe2592 , centos ,,,,/bin/bash",,,, 2, months ago , Exited (255), 12, days ago ,,,,, mycentos
第二步:
容器保存为对象,码头工人提交容器名要保存的名字
[root@localhost 相依]#,docker commit mynginx mynginx_backup sha256: a6ca067596a2c319ddcdc9592afa9a7e9be4c157959c0327214d3e577333ed3a
第三步:
查看刚才保存的镜像
[root@localhost 相依]#,docker 图像 REPOSITORY ,, TAG ,,,, IMAGE ID ,, CREATED ,,大小 mynginx_backup , latest ,,, a6ca067596a2 , 19, seconds ago , 109 mb
第四步:
镜像备份(保存为焦油文件),码头工人保存- o容器名。焦油要保存的名字
[root@localhost ~] #, docker 节省;-o mynginx.tar mynginx_backup
第五步:
查看当前目录
[root@localhost ~] #, ls anaconda-ks.cfg conf  data initial-setup-ks.cfg java  logs mynginx.tar original-ks。cfg
第六步:
删除原来的镜像并查看
[root@localhost ~] #, docker rmi mynginx_backup 未加标签的:mynginx_backup:最新 删除:sha256: a6ca067596a2c319ddcdc9592afa9a7e9be4c157959c0327214d3e577333ed3a 删除:sha256: facd3b28655186bdc7349bc017557ed80f94155831a8a3ed936f498e2f5b6b1c (root@localhost ~) #, docker 图像 REPOSITORY ,, TAG ,,,, IMAGE ID ,, CREATED ,,,大小
第七步:
镜像恢复,码头工人装载我打包好的容器的文件名。焦油
[root@localhost ~] #, docker load 小姐;mynginx.tar ea4399e4dbe6: Loading layer [==================================================祝辞],6.656 kb/6.656 kb Loaded 形象:mynginx_backup:最新 (root@localhost ~) #, docker 图像 REPOSITORY ,, TAG ,,,, IMAGE ID ,, CREATED ,,大小 mynginx_backup , latest ,,, a6ca067596a2 , 7, minutes ago , 109 mb码头工人图像本地迁移的案例