Docker镜像之不同服务器间迁移方法大全
目录
- 背景需求
- 一、docker镜像打包
- 1.1 首先下载镜像docker pull nginx:stable-alpine
- 1.2 打包生成docker镜像
- 二、docker镜像导入
- 2.1 上传tar包到服务器B
- 2.2 导入docker镜像到服务器B
- 总结
背景需求
有个需求:需要将一台服务器A上的docker镜像迁移到另一台服务器B上,并可以在服务器B上,通过命令docker images可以查看到对应的镜像(这个镜像一般是你自己打包的镜像,不是https://hub.docker.com上的,否则直接下载即可也不用这么麻烦了,当然你没有网,或者包很大,网很差,用这个方法也很Nice)。
下面,我们以一个docker pull nginx:stable-alpine的镜像为例,进行一次迁移:
一、docker镜像打包
1.1 首先下载镜像docker pull nginx:stable-alpine
在服务器A上操作
[root@nb001 ~]# docker pull nginx:stable-alpine stable-alpine: Pulling from library/nginx 213ec9aee27d: Pull complete 864534705ce1: Pull complete fe2c9e7418f8: Pull complete f08ef11b2dfc: Pull complete 36f0053ae033: Pull complete e47e25891bf2: Pull complete Digest: sha256:5ba534070ae1e5e83d52141b11ddced689b476c0001e7205f50979dc0cbdde3d Status: Downloaded newer image for nginx:stable-alpine docker.io/library/nginx:stable-alpine [root@nb001 ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE nginx stable-alpine ec84f916d1ec 4 days ago 23.6MB
1.2 打包生成docker镜像
执行镜像打包命令:docker save nginx:stable-alpine > /data/softs/nginx-stable-alpine.tar
在服务器A上操作
命令详解:
docker save [OPTIONS] IMAGE [IMAGE…]
docker save 镜像名称:镜像tag > 打包生成的镜像tar包的绝对路径
[root@nb001 softs]# docker save nginx:stable-alpine > /data/softs/nginx-stable-alpine.tar [root@nb001 softs]# ls -lrth | grep nginx-stable -rw-r--r-- 1 root root 24M Oct 24 13:36 nginx-stable-alpine.tar
最后,将包通过scp命令迁移到服务器B,或者下载在上传也ok。
番外:
scp nginx-stable-alpine.tar root@服务器IP:/data/tools
回车然后输入yes,密码即可传输。
二、docker镜像导入
在服务器B上操作
2.1 上传tar包到服务器B
将在服务器A上打包好的tar包上传到服务器B的指定位置。我这边是放到了/data/tools下,
如下,发现已经上传
[root@nb001 softs]# docker save nginx:stable-alpine > /data/softs/nginx-stable-alpine.tar [root@nb001 softs]# ls -lrth | grep nginx-stable -rw-r--r-- 1 root root 24M Oct 24 13:36 nginx-stable-alpine.tar
2.2 导入docker镜像到服务器B
首先在服务器B上查看是没有nginx相关镜像的,执行docker images | grep nginx查看
[root@nb002 tools]# docker images | grep nginx [root@nb002 tools]#
执行镜像导入:docker load < /data/tools/nginx-stable-alpine.tar
[root@nb002 tools]# docker load < /data/tools/nginx-stable-alpine.tar 994393dc58e7: Loading layer [==================================================>] 5.827MB/5.827MB 5242cd795028: Loading layer [==================================================>] 19.22MB/19.22MB 286ccd57a256: Loading layer [==================================================>] 3.584kB/3.584kB 8d14dc56a724: Loading layer [==================================================>] 4.608kB/4.608kB 7c4dfec5a9f2: Loading layer [==================================================>] 3.584kB/3.584kB b85443563c06: Loading layer [==================================================>] 7.168kB/7.168kB Loaded image: nginx:stable-alpine [root@nb002 tools]# docker images | grep nginx nginx stable-alpine ec84f916d1ec 4 days ago 23.6MB [root@nb002 tools]#
如上,发现在服务器B上已经成功导入了nginx:stable-alpine镜像
总结
栏 目:其它服务器
本文地址:https://zz.feitang.co/server/29876.html
您可能感兴趣的文章
- 12-20Kubernetes中使用临时容器进行故障排查的方法
- 12-20Nginx设置HTTPS的方法步骤
- 12-20二进制方式安装 Kubernetes1.18.3版本实现脚本
- 12-20Nginx工作模式及代理配置的使用细节
- 12-20ZooKeeper分布式协调服务设计核心概念及安装配置
- 12-20Kubernetes部署可视化地图的十个步骤
- 12-20关于docker清理Overlay2占用磁盘空间的问题(亲测有效)
- 12-20Docker compose配置文件写法及命令使用示例
- 12-20openwrt安装docker并启动的操作方法
- 12-20云原生Kubernetes初始化容器Init使用教程


阅读排行
推荐教程
- 12-07一文教你怎么选择Tomcat对应的JDK版本
- 12-07新版Eclipse集成Tomcat时找不到server选项的解决方法
- 12-06IIS7 应用程序池自动回收关闭的解决方案
- 12-05Windows Server 2019安装VMware
- 12-05Windows服务器默认IE浏览器无法下载文件的解决方法
- 12-05Docker安装Jenkins全过程
- 12-19Zabbix SAML SSO 登录绕过漏洞的操作流程
- 12-15Docker-Compose搭建Spark集群的实现方法
- 12-14Docker Desktop无法正常启动解决(failed to start...)
- 12-14k8s 与docker空间使用分析与清理方法





