CoreOS线上部署备份镜像导出回本地运行

环境

线上:39.x.x.x
线下:172.16.0.44
两个服务器都已安装CoreOS,其中线上已经运行良好,线下经测试也可以正常运行之前备份的镜像。
后补充:注意,这个对数据保存意义不大,提交的修改估计只是针对 环境变量等的,wordpress的文章图片什么的都没有真正保存下来。

一、线上容器提交修改,保存成镜像

如上图,线上在正式运行的两个容器分别是mysql数据库和wordpress博客。

我们先做第一步的将容器提交修改保存成自定义的镜像。

如上图,第一步先docker ps -s 将正在运行中的容器列出来,以方便取它们的ID;
接着的 docker images 只是为了方便对照之后生成的新镜像,这一步可以略过也行;
重要的是docker commit 容器ID(取缩略前三到四个即可) 自定义的镜像名字:标签 这一条命令。

根据实际情况,我这里敲的分别是:
docker commit 80cd wordpress:20170802
docker commit 34a0 mysql_wp:20170802

很快就直接生成镜像了,docker images查看可看到已有新镜像生成,这两个镜像就是我们要下载回来拷到本地的。
但是镜像并不能直接拷贝,所以接下来我们要做的第二步就是将镜像导出成文件,再sftp拷出来后拷入到本地,再用docker导入成镜像!

二、镜像导出导入

docker images 查看现有镜象以便对着镜像名字来敲
docker save -o 自定义的文件名字 镜像名字 (如果有同样的镜像还得加上标签)

分别敲
docker save -o mysql_wp_20170802.tar mysql_wp
docker save -o wordpress_20170802.tar wordpress:20170802

sftp拷贝文件的过程就不用多说了,接下来是在拷贝文件完成后在线下服务器进行的文件导入成镜像的操作:

从文件载入镜像可以使用Docker load命令

命令格式:
docker load --input 文件
或者
docker load < 文件名>

by:铁乐与猫

2017年8月份

end

发表评论

电子邮件地址不会被公开。 必填项已用*标注