3

GitLab 8.9.4 通过端口 802 在 Ubuntu Server 16.04 虚拟机中运行良好(综合): external_url 'http://gitlab_url:802'

我通过以下行启用了 Mattermost /etc/gitlab/gitlab.rb
mattermost_external_url 'http://gitlab_url:8065'

我还在路由器中打开了端口 8065。但这就是我尝试在浏览器中访问 gitlab_url:8065 时得到的结果:

400 Bad Request
Request Header or Cookie Too Large
nginx

指南中,我跳过了“在自己的服务器上运行 GitLab Mattermost”部分,因为如果我可以让它工作的话,使用嵌入式版本对我来说很好。

阅读“使用 GitLab 手动(重新)授权 GitLab Mattermost”部分,我去了 中的Applications部分,Admin Area发现了一个“Mattermost”应用程序。那里的两个网址是错误的(可能是因为我第一次设置了一个 dummy mattermost_external_url),所以我手动更正了它们。我不确定我是否尝试使用/不使用端口或两者兼而有之。

我试图在 GitLab 中删除 Mattermost 应用程序并重新开始 Mattermost 配置。我也尝试重置 Mattermost(这样做,但我总是遇到同样的错误。

我还尝试将其设置为/etc/gitlab/gitlab.rb

mattermost['gitlab_enable'] = true
mattermost['gitlab_secret'] = "***"
mattermost['gitlab_id'] = "***"
mattermost['gitlab_scope'] = ""
mattermost['gitlab_auth_endpoint'] = "http://gitlab_url:8065/oauth/authorize"
mattermost['gitlab_token_endpoint'] = "http://gitlab_url:8065/oauth/token"
mattermost['gitlab_user_api_endpoint'] = "http://gitlab_url:8065/api/v3/user"

我启用了日志:
mattermost['log_file_directory'] = '/var/log/gitlab/mattermost'

cat /var/log/gitlab/mattermost/mattermost.log基本上告诉我:

自动数据库升级失败.!!!

但这是我第一次尝试设置 Mattermost!

还要注意每次我运行sudo gitlab-ctl reconfigure(每次修改后我都调用它)我得到一个laaarge输出。

(我在这里发布了同样的问题)

4

1 回答 1

2

DJ Mountney在这里给出了答案:

Mattermost 服务默认运行在 8065 端口(在 nginx 后面),mattermost 外部 url 设置是告诉 nginx 监听什么端口。

如果将两者设置为相同的端口,则只有一个会得到它。在您的情况下,它是 nginx,如果您运行 sudo gitlab-ctl tail mattermost,您可能会看到它无法绑定到端口。

如果您将 mattermost_external_url 更改为不同的端口,它应该开始工作。

事实上,改变mattermost端口解决了它。IE:

mattermost_external_url 'http://gitlab_url:8066'

另请注意gitlab_auth_endpoint,url 应指向 gitlab 应用程序 + 端口(在我的情况下,不是):gitlab_token_endpointgitlab_user_api_endpoint8028066

mattermost['gitlab_auth_endpoint'] = "http://gitlab_url:802/oauth/authorize"
mattermost['gitlab_token_endpoint'] = "http://gitlab_url:802/oauth/token"
mattermost['gitlab_user_api_endpoint'] = "http://gitlab_url:802/api/v3/user"
于 2017-05-10T06:43:42.953 回答