docker方式部署的gitlab跨版本迁移升级


升级原因

就在昨天晚上,写完代码推送完,查看Gitlab的时候,发现中文包下不显示commit信息,折腾一晚上发现是12.09之前的一个bug(Nonstop "Loading commit data..." message),官方 issue

官方说在 Gitlab 的 12.09 中修复了这个BUG,但是我在下载新的Image的时候,眼拙了,原本想下载 12.10.0看错版本号下载了 12.1.0,发现bug没修复(版本错了),后来发现了这个问题,还要下载新的Image ,干脆直接升级 14版本。

迁移前

连接上docker gitlab的容器

docker exec -it gitlab /bin/bash

这时候还出现了一个错误,进不去

rpc error: code = 2 desc = containerd: container not found

解决方案:container偶尔宕掉问题的解决记录

知道是内存问题后,我无法停止容器,也无法进入,我为了保证数据安全,直接重启了宿主机,为啥重启,因为我不想删除容器,此时我还没有备份数据。

重启完成

在gitlab正常运行的情况下,输入命令

gitlab-rake gitlab:backup:create  

备份gitlab,完成后生成在 /var/opt/gitlab/backups/文件夹下 会有一个 gitlab_backup.tar

完成备份后,需要将文件复制出来留作备份。

  • 停止容器
  • 删除容器

因为我数据备份了,所以不担心

跨大版本升级

官方的升级路线指南 https://docs.gitlab.com/ee/policy/maintenance.html#upgrade-recommendations

我的升级路径为:

12.0.0-ce.0  (当前的版本)->  12.1.0-ce.0    ->   12.10.14-ce.0   -> 13.0.0-ce.0   ->  13.12.9-ce.0  ->  14.0.0-ce.0 (此版本似乎不兼容旧的数据)   ->  14..0.10-ce.0(最终版本)


依次升级,一直升级到最终版本即可。

对Gitlab 持续优化中

声明:纯情阿丁|版权所有,违者必究|如未注明,均为原创|本网站采用BY-NC-SA协议进行授权

转载:转载请注明原文链接 - docker方式部署的gitlab跨版本迁移升级


阿丁在Coding,等你成为我的朋友!