当前位置: > Linux服务器 > Docker >

docker容器迁移

时间:2016-06-04 21:48来源:linux.it.net.cn 作者:IT
 今天给大家说下怎么进行docer容器迁移,希望docker的大神不要打我,docker我才开始懂一点.相信很多人有时候在docker里配置好环境之后,会被要求放到其他地方进行测试,这就需要把整个环境进行迁移过去,这也是docker的方便之处,不用重新进行配置.
  系统:centos 6.5(64位)
1.先有个配置好的docker环境,如果你没有的话,那还不赶紧去做个.

2.对docker容器进行停止运行
docker stop redmine
docker stop redmine-mysql
如果你容器这只运行了2个容器的话,那你可以使用
docker stop $(docker ps -q -a)
这个命令可以停止所有运行中的容器.

3.对docker容器进行备份
docker ps -a  #先查看容器的id是多少

docker commit -p 容器id 新镜像名字
例:
docker commit -p 189591052dea redmine-bak
然后将镜像备份到本地:
docker save -o ~/redmine-bak.tar redmine-bak
最后把容器外的数据也打包
tar czf ~/redmine.tar.gz /srv/docker/redmine

4.将镜像和容器外的数据传到其他服务器上
scp ~/redmine-bak.tar root@ip:/root/
scp ~/redmine.tar.gz root@ip:/root/

5.恢复容器
docker load -i ~/redmine-bak.tar
tar zxf redmine.tar.gz -C /
然后启动容器
docker run --name redmine -tid \
    --link redmine-mysql:mysql \
    --publish 10083:80 \
    --env REDMINE_HOST=192.168.10.240 \
    --env REDMINE_PORT=10083 \
    --volume /srv/docker/redmine/redmine:/home/redmine/data \
    redmine-bak:latest

好了,这样就让容器迁移完成了.
ps:
我这只演示了一个容器的迁移过程,启动redmine容器里面其实还有个redmine-mysql的容器要迁移过来,不然根本无法启动,具体迁移过程参考redmine的.


(责任编辑:IT)
------分隔线----------------------------
栏目列表
推荐内容