博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
gitlab安装/迁移/升级流程
阅读量:5153 次
发布时间:2019-06-13

本文共 2902 字,大约阅读时间需要 9 分钟。

安装新的gitlab

先安装基本的依赖包
sudo yum install -y curl policycoreutils-python openssh-serversudo systemctl enable sshdsudo systemctl start sshdsudo firewall-cmd --permanent --add-service=httpsudo systemctl reload firewalldsudo yum install postfixsudo systemctl enable postfixsudo systemctl start postfix
获取gitlab yum源
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash

##### 开始安装

  • 安装前先设置hosts解析,这样就能通过域名方式访问gitlab,同时后续迁移时也不需要改动gitlab使用的数据的访问url
  • 如果非公网域名,内部的域名,如果没有dns解析,则客户端访问时,同样需要设置本机的hosts记录
  • 这里以域名git.afcat.com.cn为例,我在hosts文件中增加一行解析记录
vim /etc/hosts10.24.40.134 git.afcat.com.cn

##### 使用yum安装

bash sudo EXTERNAL_URL="https://git.afcat.com.cn" yum install -y gitlab-ce

  • 安装完就能访问了https://git.afcat.com.cn,打开页面后,会让你设置root用户的密码。该root是页面的登陆账号的root,不是服务器系统的root账号

迁移到新的gitlab

  • 迁移要保证两台gitlab版本完全一致,否则原来服务器的备份数据无法导入到新的gitlab服务器上。
先查看原来的gitlab版本号
gitlab-rake gitlab:env:info
  • 假设原来的版本号为:8.8.5
  • 那么在新机器上安装命令gitlab版本时需要带上版本号
sudo EXTERNAL_URL="https://git.afcat.com.cn" yum install -y gitlab-ce-8.8.5 --nogpgcheck
  • 以下操作在原来的gitlab服务器上操作
创建备份文件
gitlab-rake gitlab:backup:create STRATEGY=copy
备份结果
  • 记住下面这个文件名,还原时用的上
1531878574_gitlab_backup.tar
  • 默认备份位置/var/opt/gitlab/backups目录
  • 如果需要修改默认备份位置,可编辑/etc/gitlab/gitlab.rb配置文件
vim /etc/gitlab/gitlab.rb
  • 找到gitlab_rails['backup_path']配置
# 设置备份路径gitlab_rails['backup_path'] = "/var/opt/gitlab/backups"# 设置备份过期时间gitlab_rails['backup_keep_time'] = 604800
  • 改完配置必须执行下面的命令,使配置生效
gitlab-ctl reconfigure
打包配置文件
/etc/gitlab/gitlab.rb # 配置文件须备份/etc/gitlab/gitlab-secrets.json # 该文件用于代码解密用,可以不备份,但会出现500错误,下面会有对应500错误的解决方案/var/opt/gitlab/nginx/conf # nginx配置文件/etc/postfix/main.cfpostfix # 邮件配置备份
还原备份/如果是迁移,则在新服务器执行
  • 停止服务
gitlab-ctl stop unicorngitlab-ctl stop sidekiq
  • 执行还原备份文件
  • 1531878574为1531878574_gitlab_backup.tar文件的_gitlab_backup.tar前面字符
gitlab-rake gitlab:backup:restore BACKUP=1531878574
启动服务
gitlab-ctl start

gitlab升级

  • 升级只能从小版本升到画最新的小版本,不能直接跨大版本升级,只有升级到最新的小版本,才能升级到下一个大版本,不能跳跃的最新的大版本升级
  • 如:当前的版本为8.8.5,当前的最新版本为11.3.4,当前该小版本的最新版本为8.13.4,下一个大版本为9.5.10,下一个大版本为10.8.7
  • 升级顺序:先安装8.13.4,然后安装9.5.10,再安装10.8.7,最后安装11.3.4
  • 每次安装完后记得访问一下页面,如果不正常,就需要执行下面的命令,使配置生效
gitlab-ctl reconfigure
  • 具体的升级命令
sudo EXTERNAL_URL="https://git.afcat.com.cn" yum install -y gitlab-ce-8.13.4 --nogpgchecksudo EXTERNAL_URL="https://git.afcat.com.cn" yum install -y gitlab-ce-8.17.7 --nogpgchecksudo EXTERNAL_URL="https://git.afcat.com.cn" yum install -y gitlab-ce-9.5.10 --nogpgchecksudo EXTERNAL_URL="https://git.afcat.com.cn" yum install -y gitlab-ce-10.8.7 --nogpgchecksudo EXTERNAL_URL="https://git.afcat.com.cn" yum install -y gitlab-ce-11.3.4 --nogpgcheck
  • 遇到500错误
gitlab-rails runner "Project.where.not(import_url:nil).each{|p|p.import_data.destroy if p.import_data}"
  • [ERROR] Error executing action run on resource 'ruby_block[directory resource: /var/opt/gitlab/git-data/repositories]
chmod -R 2770 /var/opt/gitlab/git-data

转载于:https://www.cnblogs.com/zengchunyun/p/10958090.html

你可能感兴趣的文章
跨域问题整理
查看>>
[Linux]文件浏览
查看>>
64位主机64位oracle下装32位客户端ODAC(NFPACS版)
查看>>
获取国内随机IP的函数
查看>>
今天第一次写博客
查看>>
江城子·己亥年戊辰月丁丑日话凄凉
查看>>
IP V4 和 IP V6 初识
查看>>
Spring Mvc模式下Jquery Ajax 与后台交互操作
查看>>
(转)matlab练习程序(HOG方向梯度直方图)
查看>>
『Raid 平面最近点对』
查看>>
【ADO.NET基础-数据加密】第一篇(加密解密篇)
查看>>
C语言基础小结(一)
查看>>
STL中的优先级队列priority_queue
查看>>
UE4 使用UGM制作血条
查看>>
浏览器对属性兼容性支持力度查询网址
查看>>
OO学习总结与体会
查看>>
虚拟机长时间不关造成的问题
查看>>
校门外的树2 contest 树状数组练习 T4
查看>>
面试整理:Python基础
查看>>
Python核心编程——多线程threading和队列
查看>>