gitlab备份与恢复

查看gitlab版本

bash 复制代码
gitlab-rake gitlab:env:info
新旧 GitLab 版本必须一致,不然恢复的时候会报错

一、备份

1.备份命令

bash 复制代码
sudo gitlab-backup create
备份完成后,备份存放的默认目录在/var/opt/gitlab/backups/下

可以通过查看以下配置文件,知道备份文件目录
cat /etc/gitlab/gitlab.rb
gitlab_rails['manage_backup_path'] = true                           # 开启GitLab备份功能
gitlab_rails['backup_path'] = "/var/opt/gitlab/backups"        # 指定备份路径
gitlab_rails['backup_archive_permissions'] = 0644            # 备份文件权限
gitlab_rails['backup_keep_time'] = 604800                 # 备份保留时间,默认为7天,默认单位秒

2.备份以下目录中的密钥文件

bash 复制代码
/etc/gitlab/gitlab-secrets.json

二、恢复

1.将新的gitlab服务部署完成并开启后,拷贝之前的备份到本机器中

bash 复制代码
cp 1699958400_*.tar /var/opt/gitlab/backups/
chown git:git /var/opt/gitlab/backups/*.tar

2.恢复备份之前需要先停止以下服务,不然恢复时会报错

bash 复制代码
sudo gitlab-ctl stop puma
sudo gitlab-ctl stop sidekiq

3.执行以下命令恢复备份

bash 复制代码
sudo gitlab-backup restore BACKUP=1699958400_2025_12_14_15.6.2

过程中会提示:

Do you want to continue (yes/no)?


输入:

yes

4.恢复完成后把gitlab-secrets.json密钥文件放到以下目录中

bash 复制代码
/etc/gitlab

5.执行以下命令重新加载gitlab服务即可

bash 复制代码
sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart
相关推荐
木子欢儿1 小时前
国内 macOS/Linux 安装 rust
linux·运维·服务器·macos·rust
迪菲赫尔曼1 小时前
【基础篇 26】第一次在服务器完成训练:准备数据、断线继续、检查成果与备份
运维·服务器·人工智能·机器学习·计算机视觉
进击的荆棘1 小时前
Linux系统——线程同步与互斥
linux·运维·服务器·策略模式·同步·互斥·posix
.道阻且长.2 小时前
Linux基本开发工具:gdb和cgdb的使用
linux·运维·服务器·开发语言
vipxieliang2 小时前
可观测性与安全的融合:统一数据平台的建设实践
运维·openai·自动化运维
Android系统攻城狮2 小时前
Linux FFmpeg深度解析之av_guess_format调用流程与实战(三十六)
linux·运维·服务器·ffmpeg·ffmpeg音视频进阶
进击的荆棘2 小时前
Linux系统——线程概念与控制之线程封装
linux·运维·服务器·线程
一个天蝎座 白勺 程序猿11 小时前
KingbaseES数据库归档重做日志文件管理:从配置到运维的实战指南
运维·数据库·oracle·kingbasees·金仓数据库
分布式存储与RustFS15 小时前
镜像仓库的层别堆本地盘:用 RustFS 给 Docker Registry 当 S3 后端
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
陈希12316 小时前
Linux 防火墙配置实战:firewalld、iptables 与云安全组
linux·运维·服务器