把容器从一台服务器迁移到另一台服务器,分以下五个步骤
- 容器打包成镜像 # docker commit -m “” -a “” [CONTAINER ID] [新的镜像名] ,其中-m和-a是可选参数,意思分别是描述和作者
- 导出镜像 # docker save -o [新的镜像名.tar] [新的镜像名]
- 拷贝镜像到目标服务器 # scp src dst
- 导入镜像 # sudo docker load -i [新的镜像名.tar]
- 运行容器 # docker run
例子
以gitlab容器为例,从服务器A迁移到服务器B,服务器A上访问如下
- 容器转换成镜像
[root@Server1 ~]# docker commit gitlab gitlab_bak
- 查看是否成功
docker images
- 保存镜像到tar包
docker save -o /tmp/gitlab_bak gitlab
- 把保存的镜像发送到另一台服务器
scp 本地目录 远程登陆用户@ip地址:远程目录
scp /tmp/gitlab_bak.tar root@172.16.28.214:/tmp
- 在目标服务器 把镜像包加载到docker中
docker load -i /tmp/gitlab_bak.tar
- 运行镜像
docker run gitlab_bak
- 把之前的配置信息拷贝过来[可选]