我已经按照说明在 ubuntu 服务器上安装了 gitlab-omnibus。 它工作正常,但现在我想允许用户注册。
每个结果都提到编辑 gitlab.yml 文件,问题是我根本没有该文件,我只有 gitlab.rb
我尝试添加:
gitlab_rails['gitlab_signup_enabled'] = true
但是即使在运行重新配置并重新启动 gitlab 后也根本不起作用
在管理仪表板中,无论我做什么,我都会看到它被列为禁用功能。
在这种情况下如何启用它?
我无法重现你所看到的。
行动:
gitlab_rails['gitlab_signup_enabled'] = true
添加到 /etc/gitlab/gitlab.rb
sudo gitlab-ctl reconfigure
结果:
已启用注册
sudo grep signup /var/opt/gitlab/gitlab-rails/etc/gitlab.yml
说signup_enabled: true
。
我通过查看
gitlab-ctl reconfigure
的输出或使用 locate
找到了该文件。
这对你来说意味着什么?如果你编辑并更改为
signup_enabled: true
并运行sudo gitlab-ctl restart
,它可以工作吗?除了Ciro: 在较新的版本中,可以在管理应用程序设置中完成设置: 管理/应用程序设置
登录限制 已启用注册
这可能是它没有显示不适合您的原因。 gitlab_rails['gitlab_signup_enabled'] = true
我也遇到过这个问题,最终通过直接更改底层数据库解决了:
sudo -u gitlab-psql /opt/gitlab/bin/gitlab-psql -c '\x' -c 'update application_settings set signup_enabled=true;'
这里提到的选项在 16.11 上都不适合我。 gitlab.rb 设置没有效果,数据库选项似乎已更改。
对我来说,最直接的方法是使用 Gitlab 运行程序,如下所示:
gitlab-rails runner '::Gitlab::CurrentSettings.update!(signup_enabled: false)'
我在查看后想到了这一点: https://docs.gitlab.com/ee/api/settings.html 以及登录部分的示例,其中相同的名称用于另一个管理选项。
这也适用于 Ansible,这就是我想用它的目的。 我发现了一张关于 gitlab.rb 选项的 6 年旧票,我对此发表了评论,其中有一个有效的选项,但现在也失败了。再也找不到它了,所以我希望它能继续工作并最终出现在文档中(将尝试但分叉失败......)