簡體   English   中英

用於2個jenkins服務器的NGINX反向代理。 怎么樣?

[英]NGINX Reverse Proxy for 2 jenkins servers. How?

我想在nginx反向代理后面運行2個jenkins服務器,但找不到合適的配置它。

下面的配置工作正常

location /jenkins {
          proxy_pass https://contoso.com/jenkins;
          proxy_set_header Host $host;
          proxy_set_header X-Real-IP $remote_addr;
          proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}

如果我嘗試將位置更改為/jenkins_test ,則它將不再起作用。

我怎么了

您將需要在其自己的服務器部分中定義兩個每個jenkins實例。 然后,根據您在nginx上調用的url,正確的jenkins服務器將響應。 您的nginx配置可能具有以下結構:

http{

    # application server for first jenkins instance
    upstream app_servers_first_jenkins_instance {

    # if jenkins is running on the same server this should be something like 127.0.0.1 ...
        server https://contoso.com/jenkins;

    }

    # application server for secons jenkins instance
    upstream app_servers_second_jenkins_instance {

        server https://contoso.com/jenkins;

    }

# JENKINS SERVER 1 
server{
listen 80;
  server_name jenkinsfirstinstance.yourdomain.com;
  location / {
    proxy_pass http://app_servers_first_jenkins_instance;
   }
}

# JENKINS SERVER 2
server{

listen 80;
  server_name jenkinssecondinstance.yourdomain.com;
  location / {
    proxy_pass http://app_servers_second_jenkins_instance;
   }
}   

} # END OF HTTP SECTION

在此示例中,如果您希望它們是不同的詹金斯實例,則這兩個URL將調用相同的jenknins端點( https://contoso.com/jenkins ),您將在上游部分之一中修改此url。

如果要在nginx代理后面運行2台服務器,則意味着您需要2個位置上下文(也稱為“塊”)。

在可能位於/etc/nginx/sites-availables的配置文件中,應添加以下位置:

http{
    listen 80;

    location /jenkins1 {
      proxy_pass http://jenkins1-local-ip-address:8000;
      include /etc/nginx/proxy_params;
    }
    location /jenkins2 {
      proxy_pass http://jenkins2-local-ip-address:8001;
      include /etc/nginx/proxy_params;
    }
}

您應該注意的一件事是,我認為您的jenkins服務器位於同一LAN(局域網)中,否則在前面擁有代理服務器就沒有意義,因為您的服務器已經可以通過Internet訪問。

如果您的jenkins服務器可通過HTTPS訪問,則應在位置上下文中將http更改為https並編輯端口號以listen 443和某些ssl證書配置。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM