{{< details >}}
- Tier: 基础版, 专业版, 旗舰版
- Offering: 私有化部署
{{< /details >}}
虽然您应该在自己的(子)域上安装极狐GitLab,但有时由于各种原因,这并不可能。在这种情况下,极狐GitLab 也可以安装在相对 URL 下,例如 https://example.com/gitlab
。
本文档描述了如何在相对 URL 下运行极狐GitLab 源码安装。如果您使用的是官方 Linux 软件包,步骤不同。如果您是第一次安装极狐GitLab,请结合安装指南使用此指南。
相对 URL 的嵌套深度没有限制。例如,您可以在 /foo/bar/gitlab/git
下提供极狐GitLab,而不会遇到任何问题。
更改现有极狐GitLab 安装的 URL 会更改所有远程 URL,因此您必须在指向极狐GitLab 实例的任何本地存储库中手动编辑它们。
您必须更改以下配置文件列表以从相对 URL 提供极狐GitLab:
/home/git/gitlab/config/initializers/relative_url.rb
/home/git/gitlab/config/gitlab.yml
/home/git/gitlab/config/puma.rb
/home/git/gitlab-shell/config.yml
/etc/default/gitlab
完成所有更改后,您必须重新编译资产并重启极狐GitLab。
相对 URL 要求
如果您使用相对 URL 配置极狐GitLab,则必须重新编译资产(包括 JavaScript、CSS、字体和图像),这可能会消耗大量 CPU 和内存资源。为避免内存不足错误,您的计算机上应至少有 2 GB 的可用 RAM,我们建议 4 GB 的 RAM 和四个或八个 CPU 内核。
有关更多信息,请参阅要求文档。
在极狐GitLab 中启用相对 URL
{{< alert type=”note” >}}
不要对您的 Web 服务器配置文件进行有关相对 URL 的任何更改。相对 URL 支持由极狐GitLab Workhorse 实现。
{{< /alert >}}
在按照以下步骤在极狐GitLab 中启用相对 URL 之前,假设如下:
- 极狐GitLab 在
/gitlab
下提供服务 - 极狐GitLab 安装的目录是
/home/git/
确保遵循以下所有步骤:
-
可选。如果资源不足,您可以通过以下命令暂时释放一些内存来关闭极狐GitLab 服务:
sudo service gitlab stop
-
创建
/home/git/gitlab/config/initializers/relative_url.rb
cp /home/git/gitlab/config/initializers/relative_url.rb.sample \ /home/git/gitlab/config/initializers/relative_url.rb
并更改以下行:
config.relative_url_root = "/gitlab"
-
编辑
/home/git/gitlab/config/gitlab.yml
并取消注释/更改以下行:relative_url_root: /gitlab
-
编辑
/home/git/gitlab/config/puma.rb
并取消注释/更改以下行:ENV['RAILS_RELATIVE_URL_ROOT'] = "/gitlab"
-
编辑
/home/git/gitlab-shell/config.yml
并在以下行中追加相对路径:gitlab_url: http://127.0.0.1/gitlab
-
确保已按照安装指南中的说明复制了提供的 systemd 服务或 init 脚本和默认文件。然后,编辑
/etc/default/gitlab
并在gitlab_workhorse_options
中设置-authBackend
设置为:-authBackend http://127.0.0.1:8080/gitlab
{{< alert type=”note” >}}
如果您使用的是自定义 init 脚本,请确保根据需要编辑上述极狐GitLab Workhorse 设置。
{{< /alert >}}
-
重启极狐GitLab 以使更改生效。
在极狐GitLab 中禁用相对 URL
要禁用相对 URL:
-
删除
/home/git/gitlab/config/initializers/relative_url.rb
-
从上面的第 2 步开始,按照相同的步骤设置不包含相对路径的极狐GitLab URL。