GitLab跨版本升级

当前版本

当前GitLab版本由宝塔自动安装的8.8.5,但截止至2018-06-12,CentOS的GitLab官方最新版本为10.8.4,显然版本相差较大,故打算跨版本升级至最新版 php

请输入图片描述

步骤

升级指南

GitLab社区版不支持直接跨版本升级,需按照官方指南一步步向上升级,若版本越旧,须要跨的版本就越多 html

请输入图片描述

下载相关安装包

安装包国内选择清华镜像站速度较快,教育网还有蜜汁加成node

请输入图片描述

若升级其余版本也可自行Ctrl+F python

请输入图片描述

wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-8.17.7-ce.0.el7.x86_64.rpm
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-9.5.8-ce.0.el7.x86_64.rpm
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-10.1.4-ce.0.el7.x86_64.rpm
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-10.8.4-ce.0.el7.x86_64.rpm
复制代码

请输入图片描述

升级

关闭GitLab核心服务nginx

gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq
gitlab-ctl stop nginx
复制代码

请输入图片描述

安装8.17.7git

rpm -Uvh gitlab-ce-8.17.7-ce.0.el7.x86_64.rpm
复制代码

请输入图片描述

重启服务

若以前从宝塔安装后未配置GitLab的Nginx启动命令则须要自行配置后才能正常启动,操做见文章GitLab修改配置后nginx没法启动 重启服务redis

[root@localhost ~]# gitlab-ctl restart
/opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/omnibus-ctl-0.3.6/lib/omnibus-ctl.rb:533: warning: Insecure world writable dir /www/server/nvm/versions/node/v8.11.2/bin in PATH, mode 040777
ok: run: gitlab-workhorse: (pid 39809) 1s
ok: run: logrotate: (pid 39821) 0s
ok: run: nginx: (pid 39828) 0s
ok: run: postgresql: (pid 39835) 0s
ok: run: redis: (pid 39844) 0s
ok: run: sidekiq: (pid 39849) 1s
ok: run: unicorn: (pid 39854) 0s
复制代码

重启后稍等片刻便可访问,查看版本号,已经更新为8.17.7,后续步骤同上 sql

请输入图片描述

可能的报错

部分CentOS版本较低未自带policycoreutils-python组件可能没法升级至10.x,须要手动ruby

yum -y install policycoreutils-python
复制代码

完成

请输入图片描述

更新到10.x后明显启动项都变多了bash

[root@localhost ~]# gitlab-ctl restart
    /opt/gitlab/embedded/lib/ruby/gems/2.3.0/gems/omnibus-ctl-0.5.0/lib/omnibus-ctl.rb:684: warning: Insecure world writable dir /www/server/nvm/versions/node/v8.11.2/bin in PATH, mode 040777
    ok: run: alertmanager: (pid 45330) 1s
    ok: run: gitaly: (pid 45336) 0s
    ok: run: gitlab-monitor: (pid 45346) 1s
    ok: run: gitlab-workhorse: (pid 45362) 0s
    ok: run: logrotate: (pid 45369) 1s
    ok: run: nginx: (pid 45378) 0s
    ok: run: node-exporter: (pid 45383) 0s
    ok: run: postgres-exporter: (pid 45387) 1s
    ok: run: postgresql: (pid 45394) 0s
    ok: run: prometheus: (pid 45476) 1s
    ok: run: redis: (pid 45484) 0s
    ok: run: redis-exporter: (pid 45488) 1s
    ok: run: sidekiq: (pid 45493) 0s
    ok: run: unicorn: (pid 45503) 1s
复制代码

查看版本号,成功

请输入图片描述