gitlab 迁移

备份

查看之前docker的启动命令

history|grep run

docker run -i --name gitlab \

--restart=always \

-p 8022:22 \

-p 80:80 \

-p 8443:443 \

-v /home/gitlab/etc:/etc/gitlab \

-v /home/gitlab/log:/var/log/gitlab \

-v /home/gitlab/data:/var/opt/gitlab \

twang2218/gitlab-ce-zh

docker ps 查看旧gitlab的containId

docker exec -it xx /bin/bash 进入旧gitlab的容器里面

执行命令gitlab-rake gitlab:backup:create,生成文件1729667793_2024_10_23_11.10.1_gitlab_backup.tar,文件所在容器内的目录是

/var/opt/gitlab/backups/;

或者在宿主机搜文件名字, find / -name 1729667793_2024_10_23_11.10.1_gitlab_backup.tar

安装

在旧服务器上docker save -o /home/gitlab_new.tar gitlab_new

在新的服务器上安装docker(步骤省略)

导入旧gitlab导出的gitlab_new.tar

docker load </home/gitlab_new.tar

启动

docker run -i --name gitlab \

--restart=always \

-p 8022:22 \

-p 80:80 \

-p 8443:443 \

-v /home/gitlab/etc:/etc/gitlab \

-v /home/gitlab/log:/var/log/gitlab \

-v /home/gitlab/data:/var/opt/gitlab \

twang2218/gitlab-ce-zh

然后把旧的gitlab备份的 1729667793_2024_10_23_11.10.1_gitlab_backup.tar 、gitlab.rb 和gitlab-secrets.json 导入到新的容器里面的/opt目录

docker cp /home/1729667793_2024_10_23_11.10.1_gitlab_backup.tar containId:/opt

docker cp ...

dcoker cp ...

docker exec -it containId /bin/bash

把刚导入的tar包移动到/var/opt/gitlab/backups/

在容器执行命令

gitlab-rake gitlab:backup:restore BACKUP=1729667793_2024_10_23_11.10.1

把gitlab.rb 和gitlab-secrets.json移动到/etc/gitlab/目录

并设置权限chmod 777

容器内重启gitlab

gitlab-ctl restart

如遇到页面访问异常问题:

ip地址映射问题,修改vim /etc/gitlab/gitlab.rb

external_url 'xxx.xxx.xxx.xxx'

gitlab_rails'gitlab_ssh_host' = 'xxx.xxx.xxx.xxx'

gitlab_rails'gitlab_shell_ssh_port' = 9922

gitlab-ctl reconfigure

修改gitlab.yml

vim /var/opt/gitlab/gitlab-rails/etc/gitlab.yml

host:xxx.xx.xx.xx

port:80

https:false

gitlab-ctl restart

参考:

docker部署的gitlab迁移_docker gitlab 迁移-CSDN博客

gitlab 安装 备份 恢复 邮箱配置 修改web端口_gitlab-rake gitlab:backup:create: command not foun-CSDN博客

相关推荐
Flittly9 小时前
【AgentScope Java新手村系列】(16)从RAG到多路检索
java·spring boot·spring
小兔崽子去哪了9 小时前
Java 生成二维码解决方案
java·后端
人活一口气13 小时前
从JVM调优到MCP协议:Java全栈技术体系深度总结与企业级架构实践
java·spring boot
NE_STOP15 小时前
Vibe Coding -- 完整项目案例实操
java
荣码15 小时前
GraphRAG:普通RAG只能回答"点"的问题,我踩了4个坑才搞懂
java·python
SimonKing15 小时前
Google第三方授权登录
java·后端·程序员
明月光81815 小时前
从一行 @Builder 说起:重新拾起 Java 的 Lombok、注解与 Builder 模式
java
考虑考虑1 天前
Mybatis实现批量插入
java·后端·mybatis
咖啡八杯1 天前
GoF设计模式——中介者模式
java·后端·spring·设计模式
青石路1 天前
记一次多JDK版本问题的排查,一坑套一坑,差点没爬上来
java