Gitlab服务器备份恢复及系统升级

居安思危,思则有备,有备无患。

基于此,申请了一个测试服务器,准备先安装同版本服务器,按照最新的数据进行恢复,然后再将现在的服务器升级到Gitlab的最新版本,记录一下完整的过程,以防万一。

参考《CentOS 下搭建Gitlab+Gitlab-runner,配置邮件提醒_centos gitlab搭建_xiaodaiwang的博客-CSDN博客

gitlab备份与恢复_gitlab备份恢复_xiaodaiwang的博客-CSDN博客

一、下载安装Git、Gitlab

1、安装Git前,需要先安装依赖(以下都是在root目录下完成): 编译时如果操作系统没有安装gcc,使用yum -y install gcc*

复制代码
 yum -y install curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-devel
 tar -zxvf git-2.9.5.tar.gz
 cd git-2.9.5/
 make prefix=/usr/local all 
 yum -y install gcc*
 make prefix=/usr/local install

2、安装Gitlab,版本与原服务器安装的一致,便于恢复数据。

复制代码
rpm -ivh gitlab-ce-15.4.0-ce.0.el7.x86_64.rpm

3、设置配置文件:

复制代码
vim /etc/gitlab/gitlab.rb

4、重载配置

复制代码
gitlab-ctl reconfigure

5、设置管理员账号密码

复制代码
sudo gitlab-rails console -e production

user = User.where(id: 1).first

user.password = 'qwer1234'

user.password_confirmation = 'qwer1234'

user.save!

exit

6、登录测试,没问题。

7、 将备份文件拷贝到新的服务器 /var/opt/gitlab/backups目录下,进行备份恢复。

复制代码
scp -P 22022 gitlab_20230726.zip root@172。。:/home
cd /home
cp gitlab_20230726.zip /var/opt/gitlab/backups/
cd /var/opt/gitlab/backups/
gitlab-rake gitlab:backup:restore BACKUP=gitlab_20230726.zip

提示"Please make sure that file name ends with _gitlab_backup.tar"

忘记了需要先解压了,并将解压后的文件移动到/var/opt/gitlab/backups目录下,然后重新恢复。

unzip gitlab_20230726.zip

cd gitlab_20230726

mv 1690304462_2023_07_26_15.4.0_gitlab_backup.tar /var/opt/gitlab/backups

gitlab-rake gitlab:backup:restore BACKUP=1690304462_2023_07_26_15.4.0

将原服务器的gitlab-secrets.json覆盖到新的服务器中,该文件在/etc/gitlab目录

执行gitlab-ctl reconfigure命令使配置生效

重启服务 gitlab-ctl restart

8、浏览器访问测试,发现root密码已经不是刚才设置的password了,而是备份的那个服务器上的gitlab的root密码。

相关推荐
我一定会有钱5 天前
打造完美工作流:Git 配置”一次推送,三端同步”(Gitee/GitCode/GitHub)
开发语言·windows·vscode·搜索引擎·gitlab·github·visual studio code
LXY_BUAA6 天前
Git_在飞牛中部署 GitLab_20260817
git·gitlab
Jeanyia8 天前
GitLab 配套 Git 常用命令
git·gitlab
极小狐9 天前
极狐GitLab 补丁版本:19.2.1、19.1.3、19.0.5
网络·安全·gitlab·极狐gitlab·安全更新·补丁版本
rustfs10 天前
GitLab 如何与 RustFS 集成?
分布式·rust·gitlab
郝亚军11 天前
gitlab常用命令
gitlab
xixingzhe215 天前
Java 使用 GitLab4J 实现 WebHook
gitlab
童槿顏丶16 天前
GitLab部署到Linux
linux·运维·gitlab
InfinitePlus17 天前
Gitlab docker版本安装
docker·容器·gitlab
进击切图仔17 天前
GitLab 新用户创建与项目授权操作指南
gitlab