前言
/etc/gitlab/gitlab-secrets.json忘了备份,导致各种500,包括runner 注册也是500,网上搜了半天,还是从gitlab官方文档解决了
提示:以下是本篇文章正文内容,下面案例可供参考,本意就是清空各种gitlab-secrets.json 所关联的配置,请提前备份好代码,毕竟失败后,大不了重新安装gitlab,也不至于库毁人亡。
一、gitlab-secrets.json是什么?
gitlab-secrets.json文件负责为包含必需的敏感信息的列存储加密密钥。 如果密钥丢失,则GitLab无法解密这些列,从而无法访问以下项目:
- CI/CD variables
- Kubernetes / GCP integration
- Custom Pages domains
- Project error tracking
- Runner authentication
- Project mirroring
- Web hooks
二、清空步骤
1.进入 gitlab docker
#进入gitlab docker
docker exec -it gitlab /bin/bash
2.输入如下命令清空
注:清空后runner 之类的需要重新注册,最好提前备份好代码,具体命令干啥的,参考文末链接
#进入gitlab docker
gitlab-rails dbconsole
#等待几分钟,会进入交互界面,进入后输入如下命令
SELECT * FROM public."ci_group_variables";
SELECT * FROM public."ci_variables";
DELETE FROM ci_group_variables;
DELETE FROM ci_variables;
UPDATE projects SET runners_token = null, runners_token_encrypted = null;
UPDATE namespaces SET runners_token = null, runners_token_encrypted = null;
UPDATE application_settings SET runners_registration_token_encrypted = null;
UPDATE application_settings SET encrypted_ci_jwt_signing_key = null;
UPDATE ci_runners SET token = null, token_encrypted = null;
UPDATE ci_builds SET token = null, token_encrypted = null;
TRUNCATE web_hooks CASCADE;
总结
有问题还是需要gitlab 官方文档,其他地方总结的会缺少某些命令,虽然可能是因为我不了解,会误删什么,但是使用后暂时没啥不良反应,如果后续有问题,我再补充。
参考gitlab 文档链接:https://docs.gitlab.com/ee/raketasks/backup_restore.html#when-the-secrets-file-is-lost
892

被折叠的 条评论
为什么被折叠?



