如何给无法上外网的机器上做 docker 镜像迁移(记录)

还是假定看本文的你有一定 docker 使用基础,基础和一些细节就不解释了

有时候会碰到这么一种场景,就是目标服务器无法上外网,涉密。这样的话还能使用 docker 技术完成服务器生产环境的快速迁移吗?因为正常使用都是从 dockerhub 上进行镜像拉取使用,没有做过相关实验。所以带着疑问最近正好在家闲着没事就尝试了一下,发现这个方案是可行的。

本地搭建 docker-registry 是一种方案,但还是存在局限性,比如有些场景只能通过企业代理环境进行远程部署。

已十月魔术手的后台服务器镜像为例,跟着下面步骤走,目标是从我的云服务器迁移到我的本地环境虚拟机上:

  1. 查看云服务器有哪些镜像,我们的目标是第一个,也就是魔术手后台服务最新的版本,如下图,没想到还挺大
image.png
  1. 将镜像进行打包保存,命令见下图,我觉得聪明的你应该都能猜到含义,这里就不解释了。我尝试了两种命令,第一种是网上找的普遍的命令,第二种是书上找的,大小差距还是蛮大的,有一倍的差距。(我一度以为命令没跑完,重复了一遍发现就是这样)
image.png
  1. 把镜像先搞出来,顺便看看为什么上面两个差距这么大,看看到底为啥有一倍的大小差距。结果发现里面内容和大小都是一样的,所以猜测第二个命令额外压缩了一遍,如下图。那既然这样我觉得以后都用第二个命令就好了,毕竟还要牵扯到拷贝传输,有些企业服务器远程过去的网速应该是非常令人感动的
image.png
  1. 把镜像压缩文件用你想到的方式丢到本地环境虚拟机(目标服务器)中,如下图命令进行加载,可以看到加载成功了
image.png

搞定!既然镜像已经过去了,后续怎么操作不就看你心情了~

本文记录了镜像的迁移,当然后续还有一些点没有克服,比如:

  1. windows 离线环境下如何安装 docker
  2. linux 离线环境下如何安装 docker
  3. 自己写的代码,如何制作自己的镜像(或仓库如何打包成镜像)
  4. 同在一个网络环境下如何借用 linux 管道完成快速迁移
  5. 镜像有了,如何使用 docker-compose 快速搭建本地环境

太多了懒得写了,先欠着吧,哈哈哈

你可能感兴趣的:(如何给无法上外网的机器上做 docker 镜像迁移(记录))