Nextcloud mit Traefik - Bad Gateway?
Hallo,
Ich möchte Nextcloud (kein Docker) zusammen mit Traefik V2 ans laufen bringen.
Alles klappt super, wenn ich apache2 an meine IPv4 binde und dann mit Traefik auf diese IP verweise.
Problem ist, ich möchte apache2 gerne an den localhost binden. Apache2 lauscht dann auch auf 127.0.0.1:port aber immer wenn mich Traefik an diese Addresse und Port weiterleitet, bekommt er ein Connection Refused. Mehr konnte ich den Logs nicht entnehmen.
Irgendwelche Ideen? Es hängt ja zusammen mit dem binden an den localhost.
Vielen Dank
ANTWORT:
ip addr show docker0
An diese IPv4 müsst ihr Apache2 binden und natürlich die Traefik Konfiguration anpassen. Sonst kann Traefik nicht mit Containern außerhalb von Docker kommunizieren.
Vielen Dank an iQa1x der bei der Lösung des Problems enorm geholfen hat.
Kommst du denn direkt auf dem Rechner auf 127.0.0.1:port vom Apache? "wget -O - http://127.0.0.1:port" ? iptables /nftables ?
er zieht eine index.html von nextcloud
Habe hier einen Post auf Englisch, der hat mehr Infos:
linux - Nextcloud with Traefik - Bad Gateway / Connection Refused - Stack Overflow
Hast du evtl. bei Apache http und im Proxy https eingetragen oder umgekehrt ? Oder bei beiden https, aber die Zertifikate passen nicht ?
In dem Post ist das gleiche Prob ohne Lösg.
Bei Apache http? Da gibt man doch nur eine IP und Port an, dachte ich. Beim Proxy steht http.
1 Antwort
Für ne Weitere Rückfrage ist es zu lang...
Hast du beim Apachen nur Listen ... geändert ? In den <virtualhost. *:port> steht auch nochmal der Port. Und da gibt es ggfs. eine Datei für TLS (Original 443) und einen ohne (80), da solltest du bei dem Richtigen den Port ändern, also bei dem Ohne. Bei Debian /etc/apache2/sites-enabled/ jeweils pro VHost eine *.conf
Wenn wget mit dem Apache-Port auf localhost geht dann sollte Apache-seitig alles funktionieren. Bleibt nur noch der Proxy. Traefik kenne ich leider nicht, habe sowas nur mit nginx oder haproxy bis jetzt gebaut, daher kenne ich da die Konfiguration nicht.
Aber Connection refused ist von der Fehlermeldung her halt komisch, sowas kommt halt nur wenn der Port nicht offen ist oder die TLS Aushandlung schief geht. Oder du lokal irgendwelche Regeln zum Blockieren hast, aber localhost per iptables einzuschränken ist eigentlich vollkommen unüblich.
SELinux, AppArmor oder was in die Richtung, was quer schießen könnte ?
Weiss ich leider nicht, ich habe mit Docker leider keine Erfahrung, hatte so ein Setp aus anderen Zwecken (load-balancer) ohne Container. Hast du dem Traefik irgendwie mitgeteilt, das der 127.0.0.1 nehmen soll, ggf. auch das Interface lo, wenn der sowas braucht ? Ich kenne den leider nicht...
Ja, bei den VHosts ist auch alles angepasst. TLS brauche ich nicht und habe ich auch keinen VHost für, weil intern die Kommunikation über http läuft.