Gitlab-ce docker容器无法通过https访问

时间:2019-09-29 02:30:06

标签: docker gitlab

我在通过https访问本地gitlab时遇到问题。 我将其安装在Ubuntu / Redhat 8上,结果相同,无法访问端口443。 在/ etc / gitlab / ssl /下,我创建了一个自签名证书和密钥

xxx.crt
xxx.key

然后按照我在此给出的说明进行配置。 https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/doc/settings/nginx.md#manually-configuring-https。我遇到的问题是我无法通过https连接到gitlab。 http正常工作

奇怪的行为: 每个文档默认情况下,当您指定以“ https”开头的external_url时,NGINX将不再侦听端口80上未加密的HTTP通信。但是即使设置了external_url也是如此。

因此,在配置它之后,我检查了/var/opt/gitlab/nginx/conf/gitlab-http.conf,我发现服务器端口仍指向*:80。我将其更改为443 stop / start getlab容器,它无法访问而损坏。

为使其恢复正常工作,我还原了更改,并执行了以下操作:

gitlab-ctl reconfigure
sudo docker restart gitlab

现在,它在端口80而不是443上返回响应。

1 个答案:

答案 0 :(得分:0)

  

http正常工作

HTTP不起作用,请参阅“ Redirect HTTP requests to HTTPS

  

默认情况下,当您指定以“ https”开头的external_url时,NGINX将   不再在端口80上侦听未加密的HTTP通信。
  如果要将所有HTTP通信重定向到HTTPS,则可以使用redirect_http_to_https设置。

external_url "https://gitlab.example.com"
nginx['redirect_http_to_https'] = true

因此,请先仔细检查您的gitlab.rb,然后再检查sudo gitlab-ctl reconfigure