因为安全问题,需要升级gitlab。该漏同如下图。

 而gitlab 的升级是不能跨版本升级的,官网说明如下

Upgrading GitLab | GitLabicon-default.png?t=L9C2https://docs.gitlab.com/ee/update/

我查看了我的gitlab版本,正好是13.5.4,升到最近的是13.8.8。

查看了官网的建议升级方式,非常粗爆:删除原来的,重新拉取。

GitLab Docker images | GitLabicon-default.png?t=L9C2https://docs.gitlab.com/ee/install/docker.html

 但我们不能这么干。因为数据是一切嘛。

1、进入git docker里

 docker exec -i -t gitlab /bin/bash

2、备份数据,完成后生成在  /var/opt/gitlab/backups/文件夹下 xxxxx_2021_11_02_11.3.0_gitlab_backup.tar

gitlab-rake gitlab:backup:create

3、停止gitlab服务

gitlab-ctl stop

 4、退出容器,并停止docker git

exit

docker stop gitlab

5、拉取gitlab

docker run --detach \
 --publish 81:80 \
--name gitlab \
--restart always \
--volume /mnt/sdc/gitlab/gitlab/config:/etc/gitlab \
--volume /mnt/sdc/gitlab/gitlab/logs:/var/log/gitlab \
--volume /mnt/sdc/gitlab/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ce:13.8.8-ce.0

6、查看原来的代码是否正常,正常则不需要恢复备份。

7、如果不正常,则进入容器,恢复备份。

docker exec -i -t gitlab /bin/bash

gitlab-rake gitlab:backup:restore BACKUP=xxx_2021_11_01_11.3.0  恢复备份

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐