Як налаштувати Gitlab-omnibus з некомплектним веб-сервером?


11

Встановити

  1. Я встановив gitlabпакунок через пакет omnibus на debian 7(версія 7.8.1-omnibus-1_amd64.deb);
  2. змінити налаштування, як описано у розділі Використання некомплектованого веб-сервера
  3. запустіть команду перенастроювання: sudo gitlab-ctl reconfigure(виконати без помилок).

Nginx

Я не маю nginx'config для цього 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 'конфігурацію?

Відповіді:


9

Продовжуючи досліджувати, я знаходжу /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

Я ознаменує це як ̶a̶n̶s̶w̶e̶r̶.̶ вона працює, наскільки я можу судити, ̶ і Eсть чи не краще ПРАКТИКА / РОЗЧИН дає 404 помилки навіть при вході в систему. Це помилка в моєму кінці?
GCon

1
Так, це була помилка в моєму кінці. Працює!
GCon

1
Зауважте, це більше не працює повністю, оскільки ви отримаєте unknown log format "gitlab_access" in /etc/nginx/sites-enabled/gitlab-http.conf:52помилку.
00500005

Далі виправлено проблему формату журналу sudo ln -s /var/opt/gitlab/nginx/conf/nginx.conf /etc/nginx/sites-available/таsudo ln -s /etc/nginx/sites-{available,enabled}/nginx.conf
solidgumby

2

Що стосується gitlab 8, ми не можемо більше посилатись на стандартний gitlab-http.conf, оскільки веб-сервер пакетів не буде встановлений під час встановлення nginx['enable'] = false.

Просто завантажте потрібні конфігурації веб-сервера з сховища рецептів GitLab та змініть YOUR_SERVER_FQDNїх на бажане доменне ім’я.

Дивіться тут детальну інструкцію щодо встановлення gitlab за допомогою некомплектного веб-сервера.


1

Щоб забезпечити доступ користувача, ваш користувач Nginx (зазвичай www-data або nginx) слід додати до групи gitlab-www:

sudo usermod -aG gitlab-www nginx

або

sudo usermod -aG gitlab-www www-data

1

Якщо ви символізували gitlab-http.conf і отримали:

невідомий формат журналу "gitlab_access" в /etc/nginx/sites-enabled/gitlab-http.conf

Просто додайте 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"';
  ...
}
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.