1. 程式人生 > 其它 >gitlab 和jenkins 80 8080埠衝突問題

gitlab 和jenkins 80 8080埠衝突問題

  當我們部署gitlab的時候,一啟動,發現80和8080埠已經被佔用,只得先將監聽80埠的nginx和監聽8080埠的jenkins停止。

  修改gitlab埠主要分為兩部分,一部分是gitlab總的控制檔案,一部分是子模組真實監聽埠的修改。

  例如:官方rpm 813版本。

  gitlab.rb修改

配置檔案在/opt/gitlab/etc/gitlab.rb。這個檔案用於gitlab如何呼叫80和8080的服務等。

## Advanced settings
unicorn['listen'] = '127.0.0.1'
unicorn['port'] = 8082
nginx['listen_addresses
'] = ['*'] nginx['listen_port'] = 82 # override only if you use a reverse proxy: https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/doc/settings/nginx.md#setting-the-nginx-listen-port

gitlab-rails修改

配置檔案/var/opt/gitlab/gitlab-rails/etc/unicorn.rb

# What ports/sockets to listen on, and what options for them.
#listen 
"127.0.0.1:8080", :tcp_nopush => true listen "127.0.0.1:8082", :tcp_nopush => true listen "/var/opt/gitlab/gitlab-rails/sockets/gitlab.socket", :backlog => 1024

gitlab nginx 修改

配置檔案 /var/opt/gitlab/nginx/conf/gitlab-http.conf。這個檔案是gitlab內建的nginx的配置檔案,裡面可以影響到nginx真實監聽埠號。

server {
  listen *:82;

  server_name gitlab.
123.123.cn; server_tokens off; ## Don't show the nginx version number, a security best practice

修改完成後,重啟下,就可以放82埠的gitlab了。

gitlab-ctl restart
gitlab-ctl reconfigure 

OS nginx修改

  • 如果還是想從80埠訪問gitlab,我們可以用監聽在80埠的nginx做一個反向代理。service nginx restart後可以正常訪問。
  • server {
        listen 80;
        server_name gitlab.123.123.cn;
    
        location / {
            #rewrite ^(.*) http://127.0.0.1:8082;
            proxy_pass http://127.0.0.1:8082;
        }
    }

    giltab-shell修改

  這個配置需要改,不然在gitlab 進行push到倉庫的時候就會報錯。

找了關於8080埠的相關資訊,最後發現 ,配置檔案:/var/opt/gitlab/gitlab-shell

  修改成:

# GitLab user. git by default
user: git

# Url to gitlab instance. Used for api calls. Should end with a slash.
#gitlab_url: "http://127.0.0.1:8080"
gitlab_url: "http://127.0.0.1:82" ## 關鍵是這個地方,因為82是gitlab nginx埠,不過上面的端口乾嘛是8080來,8080應該是unicorn的監聽埠。

http_settings:

再次修改完成後,重啟下配置。

gitlab-ctl restart
gitlab-ctl reconfigure 
然後再重新登入新的埠號連結就沒問題了。

轉載:https://blog.csdn.net/vbaspdelphi/article/details/52979836