GitLab CE(Omnibus)的小版本升级(从11.6.2升级到11.9.4)
开场白
我将发布将家庭服务器的GitLab升级到最新版本的步骤。由于是小版本升级,所以没有遇到任何问题。
-
- 対象
GitLab CE Omunibus
バージョン
アップデート前: 11.6.2
アップデート後: 11.9.4(実施日の最新ver)
マシン環境
Ubuntu 16.04.5 LTS
自宅サーバ(利用者1名)
执行内容
GitLab备份
由于这只是一个小版本的更新,我认为应该没有问题,但为了安全起见,我还是会进行更新。为了确保没有漏掉备份,我会在更新之前先进行备份。
gitlab-rake gitlab:backup:create
文件将生成在/var/opt/gitlab/backups/目录下。
更新包
更新可安装的软件包列表。
apt-get update
我們將查看當前版本和可更新版本。
## apt-cache policy gitlab-ce
gitlab-ce:
Installed: 11.6.2-ce.0
Candidate: 11.9.4-ce.0
接下来,将更新软件包到最新版本。
对于我个人而言,我想着“顺便把已安装的软件包全部更新了”,因此进行了升级操作(有可能不太好)。
apt-get upgrade
如果只想更新GitLab,则可以按照以下方式写。
# 最新に更新
apt-get install gitlab-ce
# バージョン指定して更新
apt-get install gitlab-ce=11.9.4-ce.0
GitLab的更新
打开/etc/gitlab/gitlab.rb文件,并确认GitLab的配置没有错误。
由于这次是一个次要版本升级,所以看起来完全没有问题。
接着执行以下命令更新GitLab自身。
gitlab-ctl reconfigure
重新配置完成后,在最后部分输出了以下内容。
Deprecations:
== Prometheus ==
Detected Prometheus version 1.x. Version 1.x has been deprecated and support will be removed in GitLab version 12.0.
To upgrade to Prometheus 2.x, use `gitlab-ctl prometheus-upgrade` command.
Running this command will migrate all your existing data to format supported by Prometheus 2.x.
This can be a time consuming operation. To skip migrating the data, and instead remove and start fresh, run `gitlab-ctl prometheus-upgrade --skip-data-migration`.
Check https://docs.gitlab.com/omnibus/update/gitlab_11_changes.html#114 for details.
鉴于Prometheus版本已被废弃,所以我们将按照显示的指示执行命令。
gitlab-ctl prometheus-upgrade
确认动作 (Confirm action)
在浏览器中访问GitLab,并确认没有任何问题后,更新完成。
这是访问管理员区域并确认版本已升级的屏幕截图。
最后
作业非常容易完成。
因为OSS存在漏洞的担忧,所以我们希望定期进行更新。
另外,我认为逐步升级版本比一次性升级版本更加省力(之前从8升级到10非常辛苦的经历)。