2

我正在尝试使用 LDAP 配置 BitNami GitLab Stack 5.1.0-2

然后遇到问题

Could not authorize you from Ldap because “Server 192.168.133.100 refused connection on port 389”.

其中 192.168.133.100 实际上是 gitlab 服务器本身。

我改变/opt/bitnami/apps/gitlab/htdocs/config/gitlab.yml拥有

ldap:
enabled: true
host: '192.168.1.14'

,但是reboot或者GitLab重启后,又回到了192.168.133.100。那是错误!

如何让 BitNami GitLab Stack 不这样做?

如何重新启动 GitLab 以使更改的 gitlab.yml 生效?->

sudo /opt/bitnami/ctlscript.sh restart gitlab_sidekiq

https://github.com/gitlabhq/gitlabhq/issues/3934

更新重命名/opt/bitnami/apps/gitlab/updateip不能解决问题。

更新 2:问题仍然存在于 5.4.0-0

sudo chmod -x /etc/init.d/bnconfig-gitlab有帮助。

4

4 回答 4

3

它还没有关闭

/opt/bitnami/apps/gitlab/updateip --machine_hostname your_dns.name

这还没有解决问题,我认为有一个错误。我正在使用版本 Bitnami - Gitlab 5.2.1

在 /etc/init.d/bnconfig-gitlab 中它调用到 /opt/bitnami/apps/gitlab/bnconfig (而不是 updateip,updateip 只是 bnconfig 的一个链接),所以当你删除/重命名 updateip 时,是没有效果的,它仍然会重置您的主机名。

解决方案

  1. 将您的主机名设置为正确的名称:/opt/bitnami/apps/gitlab/updateip --machine_hostname your_dns.name
  2. 删除 updateip 和 bnconfig
  3. 还注释行: exec /opt/bitnami/apps/gitlab/bnconfig (in /etc/init.d/bnconfig-gitlab) 文件
于 2013-06-20T02:07:43.400 回答
2

即使在版本 6.2.0.0 中,也没有任何适当的程序可以使用静态 IP 或 FQDN。我正在使用自己的绑定服务器,并为我的 bitnami gitlab 服务器本地 IP 提供完整的反向记录。(因为我在 vpn 中和 vpc 中)这个解决方案应该在任何环境中工作。这个解决方案并不像所有文本所表明的那样先进。我只是想确保我对这个问题提供了足够的背景。

显然,init.d 脚本“/etc/init.d/bitnami”首先从“/opt/bitnami/scripts/init/functions”加载需要/使用的 bash 函数。然后 init.d (bitnami) 脚本执行位于此文件夹中的“/opt/bitnami/var/init/pre-start/”脚本(按文件名的排序顺序执行,即 010、020、030 等)。然后执行“/opt/bitnami/ctlscript.sh start”。这启动了大多数(如果不是全部)bitnami gitlab 运行所需的东西。

如果“/opt/bitnami/ctlscript.sh”脚本返回0($?==0),表示成功!init.d (bitnami) 脚本再次按排序顺序执行位于此目录中的“/opt/bitnami/var/init/post-start/”脚本。在 post-start 目录中包含脚本“020_update_ip”。

长话短说(让您远离所有功能信息)bitnami 做了很多冗余的东西(功能)来决定使用什么作为“主机地址”。它总共使用了四个函数,具有不同的返回值。它还会查询 bitnami 自己的服务器以找出您的公共 IP。我的服务器位于 VPC 内部,具有弹性 IP 和本地 IP 的 FQDN。他们的系统几乎总是决定为我的弹性 IP 使用反向公共 PTR DNS 名称。总是会穿,他们肯定喜欢使用您的 AMZ 公共 dns。

我整理了所有疯狂的非功能检测逻辑(对您的环境做出疯狂的假设,并将以下逻辑添加到“/opt/bitnami/var/init/post-start/020_update_ip”。我添加了一个额外的 elif 条件,以看看你是否在你的环境中声明了 $GITLABHOST。如果是,则使用该值作为 PUBLIC_IP。因此,当脚本运行 updateip|bnconfig 时,它将使用 $GITLABHOST 提供的值。

“/opt/bitnami/var/init/post-start/020_update_ip” >

if [ "x$1" != "x" ]; then
    PUBLIC_IP=$1
elif [ -n $GITLABHOST ]; then
    PUBLIC_IP=$GITLABHOST
else
    PUBLIC_IP=`get_server_domain`
fi

然后我将以下内容添加到“/opt/bitnami/scripts/setenv.sh”中

##### SET STATIC HOST ADDRESS IP|FQDN #####
GITLABHOST="server.domain.com"
export GITLABHOST

我在这里添加了这个,以便它完全集成到 Bitnami Gitlab 6.2 中,而不用担心它的存在。因为它是在启动后脚本之前由“/opt/bitnami/ctlscript.sh”(。“$INSTALLDIR/scripts/setenv.sh”)加载的。其他人可能想把它放在其他地方。确保您提供有效的主机/IP 地址 :)

于 2013-10-29T00:47:41.223 回答
1

这可能是由于“updatetip”脚本在重新启动时启动并更改配置文件以反映更改的 IP 地址(这对于云托管很有用)。

广告文档说如果您使用静态 IP 地址,您应该删除或重命名/opt/bitnami/apps/gitlab/updateip 。

在执行此操作之前,您可能希望运行

/opt/bitnami/apps/gitlab/updateip --machine_name your_dns.name
于 2013-05-20T08:32:50.180 回答
1

您是否尝试过以下方法来禁用 bncofnig-gitlab 服务而不是重命名文件?

sudo chmod -x /etc/init.d/bnconfig-gitlab

或者

sudo update-rc.d -f bnconfig-gitlab disable
于 2013-07-10T10:05:56.020 回答