如何让gitlab使用不同于git的用户?

时间:2014-10-01 13:34:21

标签: gitlab

我正在尝试让gitlab与其他用户一起运行,而且我无法找到任何配置它的地方。

我尝试了这个,因为我需要使用NIS帐户来运行它,实际上我甚至删除了git本地用户,在NIS上创建了一个并试图像这样重新启动它(由于UID和GID修复了所有权后)变化)。

STDERR: usermod: user 'git' does not exist in /etc/passwd
---- End output of ["usermod", "-g", "10032", "-s", "/bin/sh", "git"] ----
Ran ["usermod", "-g", "10032", "-s", "/bin/sh", "git"] returned 6

完整日志:https://gist.github.com/ssbarnea/83b9c07678187dfe238f

git用户不在passwd文件中是完全正常的,是NIS用户。此外,我无法找到gitlab在哪里获得用户组的10032值,为什么要尝试重新配置它,或者我如何自定义或绕过它。

2 个答案:

答案 0 :(得分:2)

首先需要create/have a different user in place

您将替换installation documentation所有实例:

  • sudo -u gitsudo -u yourNewUser
  • 用户git与合适的用户一样,/home/git/替换为/home/yourNewUser/

同时检查配置文件config/gitlab.yml

# Uncomment and customize if you can't use the default user to run GitLab (default: 'git')
# user: git

答案 1 :(得分:2)

以下是此问题的错误报告,相对较近的活动: https://gitlab.com/gitlab-org/omnibus-gitlab/issues/737

我的解决方案是在/etc/gitlab/gitlab.rb中设置以下内容:

user['username'] = "git"
user['group'] = "git"
user['uid'] = 1040
user['gid'] = 1034
# # The shell for the git user
user['shell'] = "/bin/bash"
# # The home directory for the git user
user['home'] = "/var/home/git"

调整每个值以匹配您现有的NIS git用户。

然后运行gitlab-ctl reconfigure

重申对该错误报告的一些评论。基本上设置上述值将导致gitlab决定不需要创建任何用户。