gitlab 12升级14(解决各种报错问题)

1.这里是从自己公司的源下载的rpm包,需要换成自己的

2.从12的最后一个版本升级到14的最后一个版本

bash 复制代码
# 停服务
[root@docker test]# gitlab-ctl stop puma && gitlab-ctl stop sidekiq && gitlab-ctl stop nginx && gitlab-ctl status

# 进入 Rails 控制台
gitlab-rails console

# 查询项目 read-only 打开的 
projects = Project.where(repository_read_only: true)

# 关闭项目的 read-only
projects.each do |p|
  p.update!(repository_read_only:nil)
end

# 退出
exit

# 存储库迁移
[root@gitlab_ae ~]# gitlab-rake gitlab:storage:migrate_to_hashed

# 重启gitlab
[root@gitlab_ae ~]# gitlab-ctl restart

# 存储库迁移
[root@gitlab_ae ~]# gitlab-rake gitlab:storage:migrate_to_hashed

# 查看传统存储项目
[root@gitlab_ae ~]# gitlab-rake gitlab:storage:list_legacy_projects

# 可以导出或者删除有问题的存储库,方便以后恢复

# 重新检查传统存储项目
[root@gitlab_ae ~]# gitlab-rake gitlab:storage:list_legacy_projects

升级到14.0.12版本

bash 复制代码
[root@docker test]# gitlab-ctl stop puma && gitlab-ctl stop sidekiq && gitlab-ctl stop nginx && gitlab-ctl status
[root@docker test]# wget https://mirrors.xurikeji.com/package/gitlab-ce/gitlab-ce-14.0.12-ce.0.el7.x86_64.rpm
[root@docker test]# rpm -Uvh gitlab-ce-14.0.12-ce.0.el7.x86_64.rpm
Warnings:
The version of the running postgresql service is different than what is installed.
Please restart postgresql to start the new version.

sudo gitlab-ctl restart postgresql
[root@gitlab_ae ~]# gitlab-ctl restart postgresql
[root@gitlab_ae ~]# gitlab-ctl reconfigure
[root@gitlab_ae ~]# gitlab-ctl restart

升级到14.3.6版本

bash 复制代码
[root@docker test]# gitlab-ctl stop puma && gitlab-ctl stop sidekiq && gitlab-ctl stop nginx && gitlab-ctl status
[root@docker test]# wget https://mirrors.xurikeji.com/package/gitlab-ce/gitlab-ce-14.3.6-ce.0.el7.x86_64.rpm
[root@docker test]# rpm -Uvh gitlab-ce-14.3.6-ce.0.el7.x86_64.rpm

Warnings:
The version of the running redis service is different than what is installed.
Please restart redis to start the new version.

sudo gitlab-ctl restart redis

Running handlers complete
Chef Infra Client failed. 31 resources updated in 58 seconds

Warnings:
The version of the running redis service is different than what is installed.
Please restart redis to start the new version.

sudo gitlab-ctl restart redis

===
There was an error running gitlab-ctl reconfigure. Please check the output above for more
details.
===

warning: %posttrans(gitlab-ce-14.3.6-ce.0.el7.x86_64) scriptlet failed, exit status 1


[root@docker test]# sudo gitlab-ctl restart redis
[root@docker test]#  gitlab-ctl restart
#这里reconfigure会报错:需要登到gitlab看后台迁移的任务全部成功才能配置成功,带上链接
#https://docs.gitlab.com/ee/user/admin_area/monitoring/background_migrations.html#database-migrations-failing-because-of-batched-background-migration-not-finished
[root@docker test]# sudo gitlab-ctl reconfigure
[root@docker test]#  gitlab-ctl restart

升级到14.3.6版本

bash 复制代码
[root@docker test]# gitlab-ctl stop puma && gitlab-ctl stop sidekiq && gitlab-ctl stop nginx && gitlab-ctl status
[root@docker test]# wget https://mirrors.xurikeji.com/package/gitlab-ce/gitlab-ce-14.9.5-ce.0.el7.x86_64.rpm
[root@docker test]# rpm -Uvh gitlab-ce-14.9.5-ce.0.el7.x86_64.rpm
# 需要等待很长时间,卡在 ...AddStatusColumnToSecurityScansTable...
[root@docker test]# gitlab-ctl reconfigure
#这里后台虽然也有迁移的任务,但是没事儿,不用管,不会影响下个版本升级
[root@docker test]# gitlab-ctl restart

升级到14.10.5版本

bash 复制代码
[root@docker test]# gitlab-ctl stop puma && gitlab-ctl stop sidekiq && gitlab-ctl stop nginx && gitlab-ctl status
[root@docker test]# wget https://mirrors.xurikeji.com/package/gitlab-ce/gitlab-ce-14.10.5-ce.0.el7.x86_64.rpm
[root@docker test]# rpm -Uvh gitlab-ce-14.10.5-ce.0.el7.x86_64.rpm
[root@docker test]# gitlab-ctl reconfigure
[root@docker test]# gitlab-ctl restart
相关推荐
西部森林牧歌1 小时前
Arbess零基础学习 - 使用Arbess+GitLab实现.Net 项目构建/主机部署
ci/cd·gitlab·arbess·tiklab devops
西部森林牧歌1 小时前
Arbess零基础学习 - 使用Arbess+GitLab实现Python项目构建/主机部署
python·ci/cd·gitlab·tiklab devops
灰勒塔德2 小时前
ubuntu 部署 gitlab docker服务
docker·容器·gitlab
西部森林牧歌17 小时前
Arbess零基础学习 - 使用Arbess+GitLab实现PHP项目构建/主机部署
ci/cd·gitlab·php·tiklab devops
爱宇阳3 天前
GitLab CI/CD 集成 Harbor 全面教程
ci/cd·gitlab·harbor
雪碧聊技术3 天前
gitLab如何新建分支(根据某个分支)
gitlab·new branch·新建分支
字节逆旅4 天前
如何解决代码冲突
gitlab
林晓lx4 天前
使用Git钩子+ husky + lint语法检查提高前端项目代码质量
前端·git·gitlab·源代码管理
爱宇阳4 天前
从容器化到自动化:Vue3 项目 Docker 部署与 GitLab CI/CD 集成 Harbor 全流程
docker·自动化·gitlab
爱宇阳4 天前
Spring Boot 项目 GitLab CI/CD 自动构建并推送到 Harbor 教程
spring boot·ci/cd·gitlab