Ich führe mehrere Docker-Container mit Hostnamen aus:
web1.local web2.local web3.local
Das Routing zu diesen erfolgt basierend auf dem Hostnamen von nginx. Ich habe einen Proxy vor diesem Setup (auf einem anderen Computer, der mit dem Internet verbunden ist), den ich als Upstream definiere:
upstream main {
server web1.local:80;
server web2.local:80;
server web3.local:80;
}
Und die tatsächliche Beschreibung des virtuellen Hosts:
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://main;
}
}
Da Container nun den Hostnamen "main" anstelle von "web1.local" erhalten, reagieren sie nicht richtig auf die Anforderung.
Frage: Wie kann ich nginx anweisen, den Namen des Upstream-Servers anstelle des Namens der Upstream-Servergruppe im Host: -Header zu übergeben, wenn eine Anfrage als Proxy gesendet wird?