docker gitlab数据迁移
1.查看docker gitlab 的版本(很重要)
docker exec -it gitlab /bin/bash
gitlab-rails console -e production
或者直接导出镜像后面导入 ( 镜像id)
docker save id > gitlab-ce.tar
docker load < gitlab-ce.tar
docker tag xxxid gitlab-ce:v1
2 查看数据 存在位置
docker inspect xxxid | grep Mounts -A 20
3 打包挂载数据
cd /srv
zip -r gitlib.zip gitlib
4.把打包的数据传到新的服务器
4.1 解压
unzip gitlib.zip -C /srv
4.2 加权限
chmod -R 777 /srv/gitlib/
4.3 修改host =>改为新服务器ip
安装vscode. 步骤。。
https://blog.csdn.net/liuxiao723846/article/details/106940400
vscode打开 gitlib.zip 解压包位置
替换新host ip
这里可以先把logs里面的文件删除,没必要挂载老日志
5. 开始挂载 gitlib.zip 解压包位置启动新的gilab
sudo docker run -d -p 443:443 -p 80:80 -p 22:22 \
--name gitlab --restart always \
-v /home/xue/gitlab/config:/etc/gitlab \
-v /home/xue/gitlab/logs:/var/log/gitlab \
-v /home/xue/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce:xxxxxx #版本。
6. 出坑
6.1 查看日志
docker logs gitlab
If this container fails to start due to permission problems try to fix it by executing:
docker exec -it gitlab update-permissions
docker restart gitlab
Installing gitlab.rb config...
cp: cannot create regular file '/etc/gitlab/gitlab.rb': Permission denied
6.2 执行一下修复
docker exec -it gitlab update-permissions
docker restart gitlab
问题参考https://zhuanlan.zhihu.com/p/354941496
重启完成可以查状态
登陆xxx.xxxx.xxxx.xxx:80
完成