记录Ubuntu1804 离线安装gitlab (迁移、恢复)

记录Ubuntu1804 离线安装gitlab (迁移,恢复)

一、搭建gitlab
准备两台Ubuntu1804服务器,将A服务器上面的gitlab数据转移到新搭建的gitlab的服务器B上面(备注:两个gitlab版本要一致,不然恢复不了数据)。
首先查看要转移机器的gitlab版本
A服务器:

输入命令 :cat /opt/gitlab/embedded/service/gitlab-rails/VERSION

在这里插入图片描述
B服务器:
这里进入下载对应离线gitlab
在这里插入图片描述
在这里插入图片描述

下载对应版本,远程传入B服务器中

输入命令:sudo dpkg -i gitlab-ce_13.3.5-ce.0_amd64.deb

在这里插入图片描述
初始化配置

输入命令:sudo gitlab-ctl reconfigure

初始化时可能会报错
在这里插入图片描述
解决方案

1.先停住gitlab:sudo gitlab-ctl stop
2.赋权:sudo chmod 755 /var/opt/gitlab/postgresql
3.执行命令:sudo systemctl restart gitlab-runsvdir.service
4.重新配置:sudo gitlab-ctl reconfigure
5.启动:sudo gitlab-ctl restart

这样就算安装完成了

二、迁移gitlab数据
A服务器:

执行命令:sudo gitlab-rake gitlab:backup:create

进行备份数据时一定要保证gitlab是正常运行的状态,使用此命令会在/var/opt/gitlab/backups目录下创建一个名称,这个压缩包就是Gitlab整个的完整部分了,并且会提示要备份gitlab.rb和gitlab-secrets.json两个文件,这两个文件gitlab.rb和gitlab-secrets.json默认是在/etc/gitlab下面,一并拷出来放在桌面。
在这里插入图片描述
在这里插入图片描述

这时候就要用ROOT账户远程登录A服务器了,不然压缩包无法放到本机桌面
Ubuntu设置ROOT账户登录:
1.查看ssh是否安装了并启动

输入命令:sudo ps -e | grep ssh

2.如果没有安装ssh就安装ssh服务器

输入命令:sudo apt-get install openssh-server

3.配置sshd文件

输入命令 :sudo vim /etc/ssh/sshd_config

将文件修改成下图然后保存

在这里插入图片描述

输入命令:sudo service ssh restart

重启ssh就可以正常用root账户登录了

B服务器:
ROOT账号登录B服务器,将桌面文件1644308851_2022_02_08_13.3.5_gitlab_backup.tar、gitlab.rb和gitlab-secrets.json的压缩包拷贝进入B服务器中

1644308851_2022_02_08_13.3.5_gitlab_backup.tar可用命令cp 拷贝到/var/opt/gitlab/backups目录下

gitlab.rb和gitlab-secrets.json的压缩包拷贝到/etc/gitlab/目录下,将原来的gitlab.rb和gitlab-secrets.json备份,然后删除,再将gitlab.rb和gitlab-secrets.json的压缩包解压在/etc/gitlab/目录下

三、gitlab数据恢复

停止相关数据连接服务:
sudo gitlab-ctl stop unicorn
sudo gitlab-ctl stop sidekiq
修改权限,怕文件因为权限问题无法恢复数据:
sudo chmod 777 /var/opt/gitlab/backups/1644308851_2022_02_08_13.3.5_gitlab_backup.tar
从备份中恢复数据:
sudo gitlab-rake gitlab:backup:restore BACKUP=1644308851_2022_02_08_13.3.5

恢复数据时会提示输入两次yes
在这里插入图片描述
等待备份结束之后

输入命令重启gitlab: sudo gitlab-ctl start

在这里插入图片描述
到这里数据就全部恢复完成了

如果不记得网页ROOT账户和密码可以重置密码

1.切换路径
cd /opt/gitlab/bin/
2.进入控制台
sudo gitlab-rails console
3.查询root账户信息
u=User.find(1)
4.重置密码(重置密码必须不小于自己设置的账号密码长度,否则重置也登录不上去)
u.password='123456789'
5.确认密码
u.password_confirmation = '123456789'
6.保存
u.save!
7.退出
exit

重启gitlab

sudo gitlab-ctl restart

再次进入gitlab页面就可以使用现在重置的密码了

  • 2
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值