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密码。

相关推荐
长空~2 天前
gitlab密钥设置
gitlab
温宇飞3 天前
GitLab CI/CD
gitlab
你的人类朋友3 天前
hotfix分支的使用
git·gitlab·github
颇有几分姿色3 天前
Git将本地项目推送到GitLab
git·gitlab
DevOps探索之旅3 天前
国产开源代码管理工具 GitPuk 安装+入门全流程解析
gitlab·tiklab·gitpuk·国产开源代码管理工具·安装与入门教程
半梦半醒*4 天前
gitlab部署
linux·运维·centos·ssh·gitlab·jenkins
dalianwawatou4 天前
GitLab 代码基础操作清单
大数据·elasticsearch·gitlab
爱宇阳7 天前
从零开始部署 GitLab CE 18.4.2:Docker Compose 新手教程
docker·容器·gitlab
Narutolxy8 天前
从混合部署到高可用:在内网环境下搭建 GitLab-Jenkins-OpenResty的完整实战复盘20251014
gitlab·jenkins·openresty
字节逆旅8 天前
Git提交后追加修改操作指南
gitlab