在经过一次gitlab服务器迁移中,由于docker容器gitlab历史版本的问题,之前用的版本无法找到镜像,只能在迁移过程中被迫升级。迁移升级后首先出现了项目不能被删除的情况,同时也出现了管理员账号无法保存全局设置的情况,都是500错误。
查看日志后发现出现OpenSSL::Cipher::CipherError等错误。经过资料查阅和验证,发现这个错误通常意味着在处理加密数据时遇到了问题,可能是由于密钥、密码或配置不匹配导致的加密解密失败。
项目不能删除的问题通过进入容器修改db数据库成功解决。
#gitlab 进入数据库命令 gitlab-rails dbconsole #执行这几个修改 #Clear project tokens gitlabhq_production=>UPDATE projects SET runners_token = null, runners_token_encrypted = null; #Clear group tokens gitlabhq_production=>UPDATE namespaces SET runners_token = null, runners_token_encrypted = null; #Clear instance tokens gitlabhq_production=>UPDATE application_settings SET runners_registration_token_encrypted = null; #Clear runner tokens gitlabhq_production=>UPDATE ci_runners SET token = null, token_encrypted = null;
执行后项目可正常删除,配置依旧不能修改,仍然是500错误,继续查找解决