nginx docker-container: 502 bad gateway Antwort

Habe ich einen Dienst hören auf port 8080. Dieser ist nicht auf einen container.

Dann habe ich einen nginx-container mit Hilfe oficial Bild:

docker run --name nginx -d -v /root/nginx/conf:/etc/nginx/conf.d -p 443:443 -p 80:80 nginx

Immerhin:

# netstat -tupln | grep 443
tcp6       0      0 :::443                  :::*                    LISTEN      3482/docker-proxy
# netstat -tupln | grep 80
tcp6       0      0 :::80                   :::*                    LISTEN      3489/docker-proxy
tcp6       0      0 :::8080                 :::*                    LISTEN      1009/java

Nginx-Konfiguration ist:

upstream eighty {
    server 127.0.0.1:8080;
}

server {
    listen 80;
    server_name eighty.domain.com;

    location /{
      proxy_pass                        http://eighty;
    }
}

Habe ich überprüft, ich bin in der Lage, eine Verbindung mit diesem server mit # curl http://127.0.0.1:8080

 <html><head><meta http-equiv='refresh'
 content='1;url=/login?from=%2F'/><script>window.location.replace('/login?from=%2F');</script></head><body
 style='background-color:white; color:white;'>
 ...

Scheint es gut läuft, aber wenn ich versuche den Zugriff über den browser, nginx erzählt, bt 502 bad gateway Antwort.

Ich bin herauszufinden, kann es ein problem im Zusammenhang mit der Sichtbarkeit zwischen einem öffnen durch eine nicht-Container-Prozess und einem container. Kann ich den container stärket Verbindung zu einem port offen ist, von anderen nicht-container-Prozess?

BEARBEITEN

Logs, wo upstream { server 127.0.0.1:8080; }:

2016/07/13 09:06:53 [error] 5#5: *1 connect() failed (111: Connection refused) while connecting to upstream, client: 62.57.217.25, server: eighty.domain.com, request: "GET /HTTP/1.1", upstream: "http://127.0.0.1:8080/", host: "eighty.domain.com"
62.57.217.25 - - [13/Jul/2016:09:06:53 +0000] "GET /HTTP/1.1" 502 173 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:47.0) Gecko/20100101 Firefox/47.0" "-"

Logs, wo upstream { server 0.0.0.0:8080; }:

62.57.217.25 - - [13/Jul/2016:09:00:30 +0000] "GET /HTTP/1.1" 502 173 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:47.0) Gecko/20100101 Firefox/47.0" "-" 2016/07/13 09:00:30 [error] 5#5: *1 connect() failed (111: Connection refused) while connecting to upstream, client:
62.57.217.25, server: eighty.domain.com, request: "GET /HTTP/1.1", upstream: "http://0.0.0.0:8080/", host: "eighty.domain.com" 2016/07/13 09:00:32 [error] 5#5: *3 connect() failed (111: Connection refused) while connecting to upstream, client: 62.57.217.25, server: eighty.domain.com, request: "GET /HTTP/1.1", upstream: "http://0.0.0.0:8080/", host: "eighty.domain.com"
62.57.217.25 - - [13/Jul/2016:09:00:32 +0000] "GET /HTTP/1.1" 502 173 "-" "Mozilla/5.0 (Windows NT 10.0; WOW64; rv:47.0) Gecko/20100101 Firefox/47.0" "-"

Irgendwelche Ideen?

  • Nur eine schnelle Vermutung, könnte es sein, aufgrund der server-Adresse? Können Sie versuchen und ändern von 127.0.0.1 auf 0.0.0.0? Wenn es nicht der Fall ist, dann einige andere applicative Fehler Auftritt, überprüfen Sie die Protokolle oder postet Sie und ich werde versuchen zu sehen, was Los ist, fügen Sie auch den port (8080) zu http://eighty am proxy_pass Linie.
  • Ich habe gerade Hinzugefügt haben anmeldet jetzt nach rechts.
  • Haben Sie versucht, die änderung der proxy_pass wie gut?
  • Ja, ich habe proxy_pass zu http://0.0.0.0:8080. Das gleiche problem...
  • Ich sehe, die logs zeigen Sie IPv6 verwenden, können Sie versuchen, und ändern Sie es auf IPv4?
  • Standardmäßig mit IPv6. Ich habe absolut keine Ahnung, wie es zu ändern. Was muss ich ändern? Andockfenster Verhalten oder OS Verhalten? Allerdings habe ich durchgeführt, ein curl http:127.0.0.1:8080 und es antwortet mir auch...
  • Lassen Sie uns weiter, diese Diskussion im chat.
  • Für mich ist das Update wurde auf add a trailing slash an die proxy_pass Direktive, nach stackoverflow.com/a/31357655
  • waren Sie mit docker, die auf linux oder windows?

InformationsquelleAutor Jordi | 2016-07-13
Schreibe einen Kommentar