将本地docker容器迁移到服务端

本文介绍如何从Docker容器生成镜像,将镜像导出为静态文件并通过scp命令发送到服务端,再将静态文件还原为镜像并导入Docker,最后从镜像新建容器。文章还分享了在容器环境中的一些实用小技巧。

从docker容器生成镜像

docker commit -a "zhaoolee" -m “完成uwsgi的配置” qs zhaoolee-qs:1.0

参数说明: -a为作者署名, -m为本次提交的内容说明, qs为容器的名称, zhaoolee-qs:1.0表示新生成的镜像名为zhaoolee-qs,镜像zhaoolee-qs版本号为1.0


从容器生成镜像的时间可以会比较长, 需要耐心等待

 

将docker镜像导出为静态文件

docker save zhaoolee-qs:1.0 > qs01.tar

zhaoolee-qs:1.0为镜像名, qs01.tar为新生成的静态文件名

 

通过将scp将静态文件发送到服务端

scp ./qs01.tar root@192.168.214.162:/qs01.tar

./qs01.tar 表示当前本地路径下的静态文件qs01.tar, root@192.168.214.162表示以root的身份登录ip为192.168.214.162服务器, :/qs0.tar表示qs01.tar将要存储到远程服务器根目录下,文件名保持为qs01.tar


scp远程拷贝是一个非常值得掌握的命令, 简单实用, 也可用与脚本编程

 

将静态文件还原为镜像, 并导入docker

docker load < qs01.tar


登录192.168.214.162, 进入根目录下(qs01.tar所在的位置), 运行此命令, 即可将镜像恢复, 并导入docker管理器

 

从刚刚导入的镜像新建容器

docker run -t -i --name qs01 -p 3000:80 -p 8000:8000 zhaoolee-qs:1.0 /bin/bash

 


小技巧: 退出当前容器环境但不关闭当前容器ctrl+p+q

 

  • 小结:

利用静态文件进行容器的迁移, 是一件非常简单的事情, 你可以像发布一个软件包一样将自己的docker容器生成的静态文件分发到各类操作系统, docker才是真正的跨平台呀!



作者:木子昭
链接:https://www.jianshu.com/p/fc857ba79dd2
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值