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
相关推荐
明月心9521 天前
git remote add 用法
gitlab
only_Klein1 天前
jenkins流水线报错:Connection reset by peer
ci/cd·kubernetes·gitlab·jenkins·ssl
梁萌2 天前
docker部署gitlab和gitlab runner
docker·eureka·gitlab
johnnyAndCode2 天前
Idea 设置GitLab时使用账密,而不是token的配置方法
gitlab·idea
天外飞雨2 天前
Gitlab使用
gitlab
BUTCHER53 天前
GitLab SSH 密钥配置
运维·ssh·gitlab
明月心9523 天前
GitLab使用
gitlab
明月心9524 天前
gitlab pull requets
gitlab
BUTCHER54 天前
GitLab基本设置
gitlab
张小凡vip4 天前
Kubernetes---gitlab的ci/cd发布基于k8s的项目示例参考
ci/cd·kubernetes·gitlab