如何使用非捆綁的 Web 伺服器設定 Gitlab-omnibus?

如何使用非捆綁的 Web 伺服器設定 Gitlab-omnibus?

安裝

  1. 我透過(version )gitlab上的綜合包安裝了該包;debian 77.8.1-omnibus-1_amd64.deb
  2. 按照中所述更改設定使用非捆綁的網路伺服器
  3. 運行重新配置命令:(sudo gitlab-ctl reconfigure完成且沒有錯誤)。

nginx

我沒有得到nginx這個 gitlab 的配置,除了套件可能使用以下/etc/gitlab/gitlab.rb檔案建立的配置:

external_url 'http://git.mydomain.fr'
web_server['external_users'] = ['www-data']
nginx['enable'] = false
ci_nginx['enable'] = false

紀錄

/var/log/nginx/gitlab_error.log

2015/02/28 14:29:16 [alert] 4137#0: *14738 768 worker_connections are not enough while connecting to upstream, client: x.x.128.194, server: git.mydomain.fr, request: "GET / HTTP/1.0", upstream
: "http://x.x.128.194:80/", host: "git.mydomain.fr"

/var/log/nginx/gitlab_access.log

在 acces.log 中,我收到了數百個關於 的請求/

x.x.128.194 - - [28/Feb/2015:14:29:16 +0100] "GET / HTTP/1.0" 500 186 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:37.0) Gecko/20100101 Firefox/37.0"
x.x.128.194 - - [28/Feb/2015:14:29:16 +0100] "GET / HTTP/1.0" 500 186 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:37.0) Gecko/20100101 Firefox/37.0"
x.x.128.194 - - [28/Feb/2015:14:29:16 +0100] "GET / HTTP/1.0" 500 186 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:37.0) Gecko/20100101 Firefox/37.0"x.x.128.194 - - [28/Feb/2015:14:29:16 +0100] "GET / HTTP/1.0" 500 186 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:37.0) Gecko/20100101 Firefox/37.0"
x.x.128.194 - - [28/Feb/2015:14:29:16 +0100] "GET / HTTP/1.0" 500 186 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:37.0) Gecko/20100101 Firefox/37.0"

問題

當嘗試使用本地或外部聯絡服務時,links2我收到錯誤502 Bad Gateway

  • 我需要建立自訂 nginx 配置嗎?

答案1

繼續探索我找到了/var/opt/gitlab/目錄並解決了這個問題:

sudo ln -s /var/opt/gitlab/nginx/conf/gitlab-http.conf /etc/nginx/sites-available/
sudo ln -s /etc/nginx/sites-{available,enabled}/gitlab-http.conf
sudo service nginx reload

答案2

對於 gitlab 8,我們無法再符號連結到預設的 gitlab-http.conf,因為當我們設定 時,將不會安裝捆綁包 Web 伺服器nginx['enable'] = false

只需從以下位置下載正確的 Web 伺服器配置即可GitLab 食譜儲存庫並更改YOUR_SERVER_FQDN為您的首選域名。

此處查看詳細說明關於如何使用非捆綁的網頁伺服器安裝 gitlab。

答案3

為了確保用戶可以訪問,您的 Nginx 用戶(通常是 www-data 或 nginx)應添加到 gitlab-www 群組中:

sudo usermod -aG gitlab-www nginx

或者

sudo usermod -aG gitlab-www www-data

答案4

如果您符號連結 gitlab-http.conf 然後得到:

/etc/nginx/sites-enabled/gitlab-http.conf 中的未知日誌格式“gitlab_access”

只需將log_format指令新增至/var/opt/gitlab/nginx/conf/nginx.conf您的全域 nginx 配置:

http {
  ...
  log_format gitlab_access '$remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent"';
  log_format gitlab_ci_access '$remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent"';
  log_format gitlab_mattermost_access '$remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent"';
  ...
}

相關內容