docker方式部署的gitlab跨版本迁移升级
- 作者: 五速梦信息网
- 时间: 2026年04月04日 13:44
之前代码服务器用的 beginor/gitlab-ce:11.3.0-ce.0 的版本,而当前时间已经到12.4.1了。
gitlab 官方已经开始支持多语言, 而且也提供了 docker 镜像, beginor/gitlab-ce 的镜像作者已经不再维护,也建议大家切换到官方镜像。
所以打算整理下迁移升级的步骤。
1.首先连接上docker beginor/gitlab-ce:11.3.0-ce.0的容器
docker exec -i -t gitlab /bin/bash
在gitlab正常运行的情况下,输入命令 gitlab-rake gitlab:backup:create 备份gitlab,完成后生成在 /var/opt/gitlab/backups/文件夹下 1572606813_2019_11_01_11.3.0_gitlab_backup.tar。
完成备份后,需要将文件复制出来留作备份。
① gitlab-ctl stop 停止gitlab全部服务
② exit 退出容器执行
③ docker stop gitlab 停止容器
2.我用的是新服务器,我把以前外挂目录全都删除掉了。只保留下了.tar的备份文件
docker pull gitlab/gitlab-ce:11.3.0-ce.0 拉取官方的相同版本进行数据恢复操作
docker exec -i -t gitlab /bin/bash 进入dokcer 容器 gitlab
gitlab-rake gitlab:backup:restore BACKUP=1572606813_2019_11_01_11.3.0 恢复备份
完成后访问WEB检查了下没有什么问题。
3. 跨大版本升级
官方的升级路线指南 https://docs.gitlab.com/ee/policy/maintenance.html#upgrade-recommendations (反正我只是偶尔成功打开过一次,其他时间都是无法访问)
我的升级路径为:
gitlab/gitlab-ce:11.3.0-ce.0 (当前的版本)-> gitlab/gitlab-ce:11.3.4-ce.0 -> gitlab/gitlab-ce:11.11.8-ce.0 -> gitlab/gitlab-ce:12.0.12-ce.0 -> gitlab/gitlab-ce:12.4.1-ce.0
基本过程都是
1. docker exec -i -t gitlab /bin/bash 进入dokcer 容器 gitlab
2. gitlab-ctl stop:停止全部服务
3. exit退出容器
4. docker stop gitlab 停止dokcer 容器 gitlab ,再删除docker rm gitlab
5.
6.漫长等待升级完成以后,登陆网站看看基本功能是否正常。
7.循环1-6步骤,直到最新版本
我按这个升级的路线,走完以后,大概看了下看了下完成后的gitlab,翻译的不是很全!别的倒没遇到什么问题!
相关文章
-
Docker环境下运行python+selenium+chrome
Docker环境下运行python+selenium+chrome
- 互联网
- 2026年04月04日
-
Docker获取Let`s Encrypt SSL 证书
Docker获取Let`s Encrypt SSL 证书
- 互联网
- 2026年04月04日
-
dockerѧϰ(1)
dockerѧϰ(1)
- 互联网
- 2026年04月04日
-
docker方式部署禅道
docker方式部署禅道
- 互联网
- 2026年04月04日
-
docker方式部署并使用gitlab
docker方式部署并使用gitlab
- 互联网
- 2026年04月04日
-
docker方式部署elk日志搜索平台
docker方式部署elk日志搜索平台
- 互联网
- 2026年04月04日






