Changing the default Gitlab port

后端 未结 3 1231
你的背包
你的背包 2021-02-06 15:11

I have installed the latest Gitlab-CE (8.10) on CentOS 7 (fresh install) via the Omnibus package as described here: https://about.gitlab.com/downloads/#centos7

Now, I wo

相关标签:
3条回答
  • 2021-02-06 15:17

    Issue here: https://gitlab.com/gitlab-org/gitlab-ce/issues/20131 Workaround: add this line to /etc/gitlab/gitlab.rb:

    nginx['proxy_set_headers'] = { "X-Forward-Port" => "8080", "Host" => "<hostname>:8080" }
    

    replace port and hostname with your values, then as root or with sudo:

    gitlab-ctl reconfigure
    gitlab-ctl restart
    

    It helps me on Debian 8.5, gitlab-ce from gitlab repo.

    0 讨论(0)
  • 2021-02-06 15:27

    I changed the etc/gitlab.rb following the comments above and my port did not change.

    external_url http://localhost:13080/
    ...
     nginx['proxy_set_headers'] = {
      "X-Real-IP" => "$remote_addr",
      "X-Forwarded-For" => "$proxy_add_x_forwarded_for",
      "X-Forwarded-Proto" => "https",
      "X-Forwarded-Ssl" => "on",
      "X-Forward-Port" => "13080",
      "Host" => "localhost:13080"
    }
    
    gitlab-ctl reconfigure
    gitlab-ctl restart
    
    0 讨论(0)
  • 2021-02-06 15:34

    In addition of external_url, the documentation also suggests to set a few NGiNX proxy headers:

    By default, when you specify external_url, omnibus-gitlab will set a few NGINX proxy headers that are assumed to be sane in most environments.

    For example, omnibus-gitlab will set:

    "X-Forwarded-Proto" => "https",
    "X-Forwarded-Ssl" => "on"
    

    (if you have specified https schema in the external_url).

    However, if you have a situation where your GitLab is in a more complex setup like behind a reverse proxy, you will need to tweak the proxy headers in order to avoid errors like The change you wanted was rejected or Can't verify CSRF token authenticity Completed 422 Unprocessable.

    This can be achieved by overriding the default headers, eg. specify in /etc/gitlab/gitlab.rb:

     nginx['proxy_set_headers'] = {
      "X-Forwarded-Proto" => "http",
      "CUSTOM_HEADER" => "VALUE"
     }
    

    Save the file and reconfigure GitLab for the changes to take effect.

    This way you can specify any header supported by NGINX you require.

    The OP ewcz confirms in the comments:

    I just uncommented the default settings for nginx['proxy_set_headers'] in /etc/gitlab/gitlab.rb (also, changing X-Forwarded-Proto to http and removing X-Forwarded-Ssl) and suddenly it works!

    0 讨论(0)
提交回复
热议问题