docker迁移禅道

因为某些原因,需要迁移docker容器

说明

服务器241.com: 旧服务器,旧的docker 需要 迁移 的容器在这里
服务器 87.com: 新服务器,新docker

可以从第四步开始看

一、旧服务器导出容器

当时的旧容器是这样的

mkdir -p /data/zbox && docker run -d -p 801:80 -p 13306:3306 \
        -e USER="root" -e PASSWD="root123" \
        -e BIND_ADDRESS="false" \
        -v /opt/zbox/:/opt/zbox/ \
        --privileged=true \
        --name zentao-server \
        --restart=always \
        idoop/zentao:latest

开始导出

登录旧服务器操作



[root@localhost upload]# docker ps -a
CONTAINER ID        IMAGE                 COMMAND                  CREATED             STATUS                    PORTS                                          NAMES
cfc2f7f30fdc        idoop/zentao:latest   "docker-entrypoint"      3 months ago        Up 3 weeks (healthy)      0.0.0.0:801->80/tcp, 0.0.0.0:13306->3306/tcp   zentao-server 
[root@localhost upload]# 
[root@localhost upload]#   ## cf 为容器id
[root@localhost upload]# docker stop cf
cf
[root@localhost upload]#  ## cf 为容器id
[root@localhost upload]# docker commit  cf  zentao
sha256:7f24aa01124b11c63cb56016f1e3331d9f71679029af67971d031548cfc29666
[root@localhost upload]#  
[root@localhost upload]#  ## 文件名称随意
[root@localhost upload]# docker save zentao > /tmp/zentao.tar
[root@localhost upload]# 
[root@localhost upload]# 
[root@localhost upload]# cd /tmp/
[root@localhost tmp]# ll         ## 查看文件
total 205380
-rw-r--r--   1 root   root   210304512 Dec  8 15:28 zentao.tar
dr-xr-xr-x. 20 root   root        4096 Sep  4 09:57 ..
drwxrwxrwt.  9 root   root         279 Dec  8 15:29 .
[root@localhost tmp]# 

二.复制新文件到服务器


[root@localhost opt]#   ## 从旧服务器复制到新服务器
[root@localhost opt]# scp root@192.168.199.241:/tmp/zentao.tar /tmp/
root@192.168.199.241's password:   #### 输入旧服务器的密码
zentao.tar                                                                                                                                                                                                                                  100%  201MB  11.1MB/s   00:18    
[root@localhost opt]#  # 查看 复制 结果 
[root@localhost opt]# cd /tmp/
[root@localhost tmp]# ll
总用量 205376
drwx------ 3 root root        16 92 10:01 systemd-private-b91f61b020a74e08b736001c3e6419e4-cups.service-6Fxsu5
drwx------ 3 root root        16 1117 15:25 systemd-private-b91f61b020a74e08b736001c3e6419e4-nginx.service-YZMGnl
-rw-r--r-- 1 root root 210304512 12月  8 15:30 zentao.tar
[root@localhost tmp]# 

因为旧服务器的数据放在 /opt/zbox里
导入之前 要把旧的文件复制过来

[root@localhost zbox]# pwd
/opt/zbox
[root@localhost zbox]# 
[root@localhost zbox]# scp -r  /opt/zbox/   root@192.168.199.87:/opt/zbox 
这个可能比较慢
三、导入

[root@localhost opt]# 
[root@localhost opt]#   ## 把压缩包导入为镜像
[root@localhost tmp]# docker load  < zentao.tar
5883de9495a3: Loading layer [==================================================>] 36.88 MB/36.88 MB
Loaded image: zentao:latest [>                                                  ] 393.2 kB/36.88 MB
[root@localhost tmp]# 
[root@localhost tmp]# 
[root@localhost tmp]# 
[root@localhost tmp]# 
[root@localhost tmp]#   ## 查看docker 镜像
[root@localhost tmp]# docker images
REPOSITORY               TAG                 IMAGE ID            CREATED             SIZE

zentao                   latest              7f24aa01124b        4 minutes ago       207 MB
 
centos                   tomcat8             c3eb3994a063        4 years ago         913.3 MB
centos                   jdk8                10b02dc2ec1a        4 years ago         860.7 MB
docker.io/centos         latest              980e0e4c79ec        4 years ago         196.7 MB
docker.io/redis          latest              0d1cbfaa41da        4 years ago         185 MB
[root@localhost tmp]# 
[root@localhost tmp]#  
[root@localhost tmp]# 
[root@localhost tmp]# docker load  < zentao.tar
5883de9495a3: Loading layer [==================================================>] 36.88 MB/36.88 MB
Loaded image: zentao:latest [>                                                  ] 393.2 kB/36.88 MB
[root@localhost tmp]#
[root@localhost tmp]#

运行


[root@localhost tmp]# ## 运行 
[root@localhost tmp]# docker run zentao
 
 

这就完了吗,没 有,常规的容器就这么迁移就行了吧,可能 ,但是这个docker 迁移 了不知道为什么 启动不了,
算了笨办法 来做

四、重新开始

新服务器运行新的禅道容器

mkdir -p /data/zbox2 && docker run -d -p 802:80 -p 23302:3306 \
        -e USER="root" -e PASSWD="root123" \
        -e BIND_ADDRESS="false" \
        -v /opt/zbox2/:/opt/zbox/ \
        --privileged=true \
        --name zentao-server2 \
        --restart=always \
        idoop/zentao:latest
        

去旧的服务器把sql导出 来


#进容器
 docker exec -it zentao-server bash

## 因为 容器没有配置环境变量,需要 进mysql 目录 
 cd /opt/zbox/run/mysql/ 
  # 使用dump导出 
   ./mysqldump  -u root -p  zentao >  /opt/zbox/zentao.sql
  

## 打开mysql root用户的远程 连接 
# 这个mysql默认不支持root远程 连接 


#2进入 mysql
 mysql -u root -p

 #3输入密码 
# 4更新root权限
grant all on *.* to 'root'@'%' identified by 'root123'; 
 
grant all on *.* to 'root'@'%' identified by '123456'; 
   
  
  flush privileges;­



再导入 到新的禅道
导入方法千千万,我用的是navicat ,不逼逼 了
数据回来 了
在这里插入图片描述
但是图片 没有

图片文件的位置


[root@localhost 1]# 
[root@localhost 1]# 
[root@localhost 1]# 
[root@localhost 1]# pwd
/opt/zbox/app/zentao/www/data/upload/1
[root@localhost 1]# ll
total 12
drwxrwxrwx 2 65534 65534 4096 Sep 10 15:17 202009
drwxrwxrwx 2 65534 65534 4096 Nov 30 16:57 202011
drwxrwxrwx 2 65534 65534 4096 Dec  8 10:00 202012
drwxrwxrwx 2 65534 65534   72 Oct 15 11:42 202010
drwxrwxrwx 6 65534 65534   62 Dec  1 09:17 .
drwxrwxrwx 3 zyl   zyl     33 Sep  4 10:06 ..
[root@localhost 1]# 
[root@localhost 1]# 
[root@localhost 1]# 


把这些东西复制 到新容器的 对应 目录 就行了

总结

新建一个容器
复制 sql 文件
复制图片 文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值