基于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、完成

相关推荐
angushine2 天前
gitlab跨服务器备份
服务器·gitlab·github
蜡台3 天前
Git 常用配置:修改地址 ,提交模板配置
git·gitlab·template·git commit·gitbash
染夕陌木3 天前
极简教程:GitLab 上配置 SSH Key(附常见问题解决)
运维·ssh·gitlab
晨旭缘4 天前
GitLab CICD 中 K8s 部署:BOM 头与 YAML 格式全解
容器·kubernetes·gitlab
鳄鱼杆5 天前
服务器 | 2026年Ubuntu 24.04下GitLab Docker 企业级部署
服务器·ubuntu·gitlab
FreeBuf_6 天前
黑客滥用 GitHub 和 GitLab 托管恶意软件并实施凭证钓鱼攻击
gitlab·github
有理想的打工人9 天前
gitlab的参数设置与团队管理
gitlab
有理想的打工人9 天前
gitlab群组管理与ssh链接
ssh·gitlab
M-Ellen9 天前
从零搭建 Windows + WSL2 + Docker + GitLab CI/CD 完整手册
ci/cd·docker·gitlab
大脸胖柴10 天前
webStorm+gitLab操作学习
学习·gitlab·webstorm