Linux部署gitlab以及数据迁移找回root密码

一、前期准备工作

1.下载安装包

下载地址:https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/

2.安装依赖
sudo yum install -y curl policycoreutils-python openssh-server openssh-clients
sudo systemctl enable sshd
sudo systemctl start sshd
sudo firewall-cmd --permanent --add-service=http
sudo systemctl reload firewalld

#安装邮件服务器

sudo yum install postfix
sudo systemctl enable postfix
sudo systemctl start postfix

#设置postfix开机自启动
sudo chkconfig postfix on

3.安装

将下载好的安装包上传到服务器,然后进行安装

rpm -ivh gitlab-ce-10.0.0-ce.0.el7.x86_64.rpm
Linux部署gitlab以及数据迁移找回root密码_第1张图片
此时我们的gitlab就算安装成功了,接下来我们来配置gitlab

4.配置
rpm安装的时候默认安装到/opt目录下,为了防止以后项目过多导致磁盘空间不足,可以设置数据存放目录
vim /etc/gitlab/gitlab.rb

external_url ‘http://ip:端口’

gitlab_rails[‘gitlab_shell_ssh_port’] = 22022 //设置shell端口与登录一致

git_data_dirs({

“default” => {

“path” => “/mnt/nfs-01/git-data”,

“failure_count_threshold” => 10,

“failure_wait_time” => 30,

“failure_reset_time” => 1800,

“storage_timeout” => 30

}

})

“path” => "/mnt/nfs-01/git-data"是设置存放路径,可以修改为系统中磁盘空间较大的路径
如我的在/home/gitlab_data
“path” => “/home/gitlab_data”
还可以设置项目的访问路径
external_url ‘http://ip’
如果你shell的登陆端口修改过还需要修改shell端口和你登陆端口一致
gitlab_rails[‘gitlab_shell_ssh_port’] = 22011 //22011为我登陆的shell端口
gitlab默认端口为8080,如果被占用可以修改端口
nginx[‘listen_port’] = 8081
配置完成后启动gitlab

gitlab-ctl reconfigure
gitlab-ctl restart
配置完毕后gitlab就自动启动了,此时我们访问ip,会进入到让我们重置密码的页面,我们来将密码进行重置
Linux部署gitlab以及数据迁移找回root密码_第2张图片
之后我们进行登录,默认账号为root,密码为刚重置的密码,成功登陆后,我们进入首页。
至此gitlab安装完成。

5.迁移
由于公司服务器更换,需要把原来服务器的数据迁移到新服务器
1.备份git服务器数据

gitlab-rake gitlab:backup:create RAILS_ENV=production

注:默认备份后文件一般位于/var/opt/gitlab/backups/,文件名字:

1565163295_2019_08_07_10.0.0_gitlab_backup.tar

2.新服务器上安装与原服务器一样版本的gitlab。

由于Gitlab自身的兼容性问题,高版本的Gitlab无法恢复低版本备份的数据.

查看版本信息

cat /opt/gitlab/embedded/service/gitlab-rails/VERSION

3.将生成的tar文件拷贝到新服务器对应的backups目录下

scp /var/opt/gitlab/backups/1565163295_2019_08_07_10.0.0_gitlab_backup.tar username@ip:/var/opt/gitlab/backups/

如果无法使用scp命令,可以通过xftp把文件上传和下载

4.新GitLab服务数据恢复

gitlab-rake gitlab:backup:restore RAILS_ENV=production BACKUP=1565163295_2019_08_07_10.0.0

5.重启gitlab服务并检测恢复数据情况

gitlab-ctl restart
gitlab-rake gitlab:check SANITIZE=true
6.迁移之后克隆地址修改

vim /etc/gitlab/gitlab.rb

Linux部署gitlab以及数据迁移找回root密码_第3张图片
6.修改root密码
如果忘了root用户的密码,可以通过下面方式修改密码
1、切换目录:

cd /opt/gitlab/bin

2、执行 :sudo gitlab-rails console production 命令 开始初始化密码
Linux部署gitlab以及数据迁移找回root密码_第4张图片

3、在irb(main):001:0> 后面通过 u=User.where(id:1).first 来查找与切换账号(User.all 可以查看所有用户)

4、通过u.password='12345678’设置密码为12345678(这里的密码自己随意设定):

5、通过u.password_confirmation=‘12345678’ 再次确认密码

6、通过 u.save!进行保存(切记切记 后面的 !)

7、如果看到上面截图中的true ,说明已经成功了,执行 exit 退出当前设置流程即可。

8、回到gitlab ,可以通过 root/12345678 这一超级管理员账号登录了

你可能感兴趣的:(Linux部署gitlab以及数据迁移找回root密码)