基于gitlab 12.8.0版本的完整镜像过程

目前已在一台服务器上安装了gitlab 12.8.0,并且稳定运行了有几年了,其上面也创建了大量的项目。目前要求对该gitlab及其上面的所有仓库做一个完整的镜像。具体操作过程如下:

1、确认现有的gitlab的版本号

2、到gitlab官网下载相同版本号的gitlab安装包,下载地址:ubuntu/bionic/gitlab-ce_12.8.0-ce.0_amd64.deb - gitlab/gitlab-ce · packages.gitlab.com​​​​​​​

3、在新的服务器上下载安装包:

wget --content-disposition https://packages.gitlab.com/gitlab/gitlab-ce/packages/ubuntu/bionic/gitlab-ce_12.8.0-ce.0_amd64.deb/download.deb --no-check-certificate

4、安装

dpkg -i gitlab-ce_12.8.0-ce.0_amd64.deb

5、对gitlab进行配置

执行:vi /etc/gitlab/gitlab.rb

对external_url进行设置

执行:sudo gitlab-ctl reconfigure ,等待执行完成

6、通过浏览器打开新安装的gitlab

http://ip,端口号默认80,打开后可以设置密码

新服务器上的gitlab安装完成,下面开始镜像原来的gitlab仓库

1、在原gitlab服务器上执行:gitlab-backup create 或者仓库比较大的话,可以在后台执行:nohup gitlab-backup create &

备份成功后,文件放在:/var/opt/gitlab/backups

2、将备份文件 xxx.tar 复制到新服务器:scp xxx.tar user@ip:/var/opt/gitlab/backups

3、在新服务器上执行:chmod a+r 1704341329_2024_01_04_12.8.0_gitlab_backup.tar,增加可读权限。

在新服务器执行还原指令:gitlab-backup restore BACKUP=1704341329_2024_01_04_12.8.0 ,注意结尾没有_gitlab_backup.tar

4、还原完成

5、两行红字说,gitlab.rb和gitlab-secrets.json包含敏感信息,并没有在备份文件中,可以手动将文件从原服务器复制到新服务器上。文件位置在:/etc/gitlab/ 中

6、文件复制过去之后,需要执行:sudo gitlab-ctl reconfigure 进行重新配置

7、完成

相关推荐
东林牧之34 分钟前
CICD[软件安装]:docker安装gitlab
docker·容器·gitlab
东林牧之40 分钟前
CICD[导航]、docker+gitlab+harbor+jenkins从安装到部署
docker·gitlab·jenkins
一世一生命1 天前
Windows下Gitlab多账号(3个及以上)SSH配置
运维·ssh·gitlab
裁二尺秋风2 天前
CI/CD — Pipeline的使用以及Blue Ocean多分支流水线的使用方法
ci/cd·gitlab·jenkins
北海之灵2 天前
docker desktop部署本地gitlab服务
docker·容器·gitlab
兔老大RabbitMQ2 天前
GitHub vs GitLab 全面对比报告(2025版)
gitlab·github
CC码码3 天前
管理你的多个 Git 密钥(多平台多账号)
git·gitlab·github
CC码码3 天前
管理你的多个 Git 密钥(单平台多账号)
git·gitlab·github
你想考研啊3 天前
二、jenkins之idea提交项目到gitlab、jenkins获取项目
运维·gitlab·jenkins
兔老大RabbitMQ3 天前
GitLab详细分析
gitlab