gitlab的迁移并升级过程

gitlab迁移:

注意事项:gitlab迁移必须是相同版本,如果版本不同,升级过程中出现问题较多难为处理,甚至升级不成功,本人在这里踩过不少坑,所以还是先安装相同的版本,等迁移过去然后再升级是一个不错的选择。

原来版本:7.14.0

操作平台:ubuntu16.04

机器配置:4核8G

 

gitlab安装

ubuntu安装gitlab7.14.0

方法一:

curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
sudo apt-get install gitlab-ce=7.14.0-ce.0

方法二:

wge --content-disposition https://packages.gitlab.com/gitlab/gitlab-ce/packages/ubuntu/precise/gitlab-ce_7.14.0-ce.0_amd64.deb/download.deb
sudo dpkg -i gitlab-ce_7.14.0-ce.0_amd64.deb

安装完成后,要重新配置gitlab,才可以正常启动gitlab:

sudo gitlab-ctl reconfigure
sudo gitlab-ctl start

gitlab相关命令:

sudo gitlab-ctl start       启动gitlab
sudo gitlab-ctl restart     重启gitlab
sudo gitlab-ctl stop        停止gitlab

gitlab备份

备份命令:sudo gitlab-rake gitlab:backup:create

注意:备份的时候gitlab不能停止,如果停止了gitlab,备份的时候将会提示数据库5432端口无法连接而备份失败。

        备份完成后,即可在/var/opt/gitlab/backups/目录下创建一个名称类似为1502357536_2017_08_10_9.4.3_gitlab_backup.tar的压缩包, 这个压缩包就是Gitlab整个的完整部分, 其中开头的1502357536_2017_08_10_9.4.3是备份创建的日期

 

gitlab迁移:

一、将打包好的备份文件拷贝到恢复目录

sudo scp 1516433956_gitlab_backup.tar ubuntu@192.168.31.34:/var/opt/gitlab/backups/

二、将迁移文件的权限修改为777

sudo chmod 777 1516433956_gitlab_backup.tar

三、停止相关数据连接服务

gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq

四、恢复gitlab

gitlab-rake gitlab:backup:restore BACKUP=1516433956 (注意这里的编号是恢复文件的头部编号)

五、恢复过程如果备份文件比较大的话时间较长,中间会等待输入确认操作,根据提示输入yes即可。

六、恢复完成,启动gitlab即可通过浏览器80端口访问gitlab内容

sudo gitlab-ctl start

gitlab升级:(gitlab7.14.0--->>>gitlab9.5.0)

截止目前为止gitlab最新版本为10.8.4,如果直接从7版本升级到10版本出现提示:升级不成功,必须先升级到9.5版本然后再升级到10的版本。其实中间是postgresql数据库升级的一个过程,本人在此没有投入过多的精力,只是先升级到9.5然后再升级新的版本,成功~

 一、升级gitlab从7.14.0到9.5.0,同样安装的方式有两种

方法一:

curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
sudo apt-get install gitlab-ce=9.5.0-ce.0

方法二:

wget --content-disposition https://packages.gitlab.com/gitlab/gitlab-ce/packages/ubuntu/trusty/gitlab-ce_9.5.0-ce.0_amd64.deb/download.deb

 二、安装完成后,启动gitlab会报错,原因是postgresql没有升级到最新,需要将postgresql也升级到最新。

升级postgresql数据库方法:

sudo gitlab-ctl pg-upgrade

三、升级完数据库之后,重新配置gitlab

sudo gitlab-ctl reconfigure

四、启动gitlab

sudo gitlab-ctl start

五、启动之后即可在浏览器80端口查看gitlab相关内容,至此,gitlab升级9.5.0版本升级完成。

 

gitlab升级:(gitlab9.5.0--->>>gitlab10.7.0)

最新版本10.8.4存在bug较多,尝试几次升级后都没有成功,具体原因实在没有研究明白,最后只能放弃最新版本而选择升级到10.7.0

 一、升级gitlab9.5.0到10.7.0,同样方式有两种

方法一:

curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
sudo apt-get install gitlab-ce=10.7.0-ce.0

方法二:

wget --content-disposition https://packages.gitlab.com/gitlab/gitlab-ce/packages/ubuntu/trusty/gitlab-ce_10.7.0-ce.0_amd64.deb/download.deb

二、升级完成之后,同样会提示数据库需要更新,虽然在上一步骤已经更新数据库到最新,但是此时还需要重新跑一边数据库更新命令。

sudo gitlab-ctl pg-upgrade

三、重新配置gitlab

sudo gitlab-ctl reconfigure

四、重新启动gitlab

sudo gitlab-ctl restart

至此步骤,已经将gitlab从7.14.0版本升级到10.7.4,以上为全部步骤。

-----------------------------------------------------------------------------------------------------------

安装完成后,配置gitlab域名和邮箱

域名配置:

配置文件:/etc/gitlab/gitlab.rb

修改项:external_url 'http://sc-git'     #sc-git就是自定义的本地gitlab域名

 

邮件配置:

配置文件:/etc/gitlab/gitlab.rb

以阿里企业邮箱为准,配置以下内容:               

############################
# gitlab.yml configuration #
############################

gitlab_rails['gitlab_email_enabled'] = true
gitlab_rails['gitlab_email_from'] = 'xxx@xxx.com'     #定义邮件来自哪里
gitlab_rails['gitlab_email_display_name'] = 'Gitlab'                #定义邮件主题


################################
# GitLab email server settings #       gitlab server邮件配置
################################

# see https://gitlab.com/gitlab-org/omnibus-gitlab/blob/629def0a7a26e7c2326566f0758d4a27857b52a3/doc/settings/smtp.md#smtp-settings
# Use smtp instead of sendmail/postfix.

gitlab_rails['smtp_enable'] = true
gitlab_rails['smtp_address'] = "smtp.mxhichina.com"
gitlab_rails['smtp_port'] = 465           #注意这里是ssl加密端口465,不能是25端口,否则将不能发送成功,出现ssl错误。
gitlab_rails['smtp_user_name'] = "xxx@xx.com"
gitlab_rails['smtp_password'] = "xxxxx"                          #邮箱主要配置信息
gitlab_rails['smtp_domain'] = "smtp.mxhichina.com"
gitlab_rails['smtp_authentication'] = "login"
gitlab_rails['smtp_enable_starttls_auto'] = true
gitlab_rails['smtp_tls'] = true

配置完邮件之后,需要重新配置gitlab,并且重新启动,新的配置将会生效。

sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart

发送邮件测试:

 一、进入gitlab控制台

gitlab-rails console

 二、发送测试邮件

Notify.test_email('xxx@xx.com', 'gitlab', 'test email for gitlab').deliver_now

如果邮件配置正确,以上两个过程不会出现报错现象,进入邮箱即可收到测试。

以上如果有什么问题可以邮件至本人邮箱,一起交流学习:jiangong.huang@foxmail.com

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值