Skip to content

一、GitLab 以 Omnibus 包安装指定版本(官方推荐)

1.1 安装必要的依赖

plain
sudo yum install -y curl policycoreutils-python openssh-server

1.2 配置 Postfix 以发送邮件(可选,如果需要邮件功能)

plain
sudo yum install -y postfix
sudo systemctl enable postfix
sudo systemctl start postfix

1.3 添加 GitLab 包仓库并安装包

plain
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash

1.4 查看可用版本

plain
yum list gitlab-ee --showduplicates

1.5 执行安装命令

plain
yum install gitlab-ee-11.10.4-ee.0.el7

1.6 修改 GitLab 配置文件

编辑 /etc/gitlab/gitlab.rb,把 external_url 'http://...' 改成自己的 IP 或域名:

plain
vim /etc/gitlab/gitlab.rb

1.7 重新读取配置,使配置生效

plain
gitlab-ctl reconfigure

1.8 查看服务状态与相关信息

plain
gitlab-ctl status
gitlab-rake gitlab:env:info

1.9 浏览器登陆测试

注意:此版本没有密码文件,第一次登陆直接修改 root 密码。

二、备份 GitLab

2.1 编写备份脚本

plain
vim /opt/backup/auto-backup.sh
plain
gitlab-rake gitlab:backup:create

2.2 添加计划任务

plain
vim /etc/crontab
plain
# 每天凌晨1点开始执行备份
0  1  *  *  * root /opt/backup/auto-backup.sh

三、恢复指定备份文件

  1. 搭建一个全新的或干净的 GitLab 测试服务器(以上已经完成,需要注意 GitLab 版本要求一致)。使用 sudo gitlab-rake gitlab:env:info 检查与原备份文件版本对比。
  2. 将备份文件 1760293378_2025_10_13_11.10.4-ee_gitlab_backup.tar 上传到测试服务器的 GitLab 备份目录,默认为 /var/opt/gitlab/backups
  3. 修改备份文件的权限和宿主:
plain
sudo chown git:git /var/opt/gitlab/backups/1760293378_2025_10_13_11.10.4-ee_gitlab_backup.tar
sudo chmod 600 /var/opt/gitlab/backups/1760293378_2025_10_13_11.10.4-ee_gitlab_backup.tar
  1. 停止相关服务:
plain
sudo gitlab-ctl stop puma
sudo gitlab-ctl stop sidekiq
# 验证服务是否已停止
sudo gitlab-ctl status

应该看到 pumasidekiqdown 状态。

  1. 执行恢复操作:
plain
gitlab-rake gitlab:backup:restore BACKUP=1760293378_2025_10_13_11.10.4-ee

恢复时间长短与备份数据大小有关,本次备份文件 77G,恢复时长大概 2 小时。

  1. 验证数据是否正常,使用原有账号登陆平台进行检查。

最近更新