Cloudflare Tunnel mit Docker Compose: Origin Service richtig konfigurieren lässt sich zuverlässig beheben, wenn du Beobachtung, Ursache und Änderung sauber trennst. Entscheidend ist nicht ein schneller Neustart, sondern der Nachweis, an welcher Grenze zwischen Cloudflare-Edge und Origin der Fehler entsteht. Sichere zuerst Zeitstempel, Status und Logs. Ändere danach genau eine Variable und wiederhole denselben Test.
Die folgende Anleitung behandelt gezielt die Suchanfrage cloudflared docker compose. Sie beginnt mit read-only Prüfungen, ordnet typische Meldungen ein und führt erst anschließend zu kontrollierten Korrekturen. So bleibt nachvollziehbar, welche Maßnahme tatsächlich geholfen hat.
Schnelllösung
- Notiere den exakten Fehler, Zeitpunkt und betroffenen Host.
- Prüfe Prozess, Listener und Abhängigkeiten, bevor du etwas neu startest.
- Lies cloudflared- und Origin-Logs im passenden Zeitfenster.
- Teste den problematischen Pfad lokal und aus Sicht des aufrufenden Dienstes.
- Ändere nur die bestätigte Ursache und dokumentiere den Rollback.
Wenn die Schnellprüfung bereits einen geschlossenen Port, einen falschen Namen oder eine nicht geladene Konfiguration zeigt, korrigiere genau diesen Befund. Bleibt das Ergebnis unklar, fahre mit der Diagnose fort; mehrere gleichzeitige Änderungen erschweren die Auswertung.
Fehlermeldung
cloudflared docker compose
connection refused / timeout / invalid configuration
service unavailable or unexpected response
Eine Fehlermeldung beschreibt zunächst nur die sichtbare Grenze. connection refused bedeutet beispielsweise, dass ein Ziel erreichbar sein kann, am angesprochenen Port aber kein passender Listener annimmt. Ein Timeout weist eher auf Routing, Firewall oder eine blockierte Abhängigkeit hin. Syntax- und Validierungsfehler entstehen dagegen vor dem eigentlichen Verbindungsaufbau.
Vergleiche Meldung, Uhrzeit und Gegenstelle. Dieselbe Benutzeroberfläche kann einen Fehler aus Browser, Proxy, Anwendung oder Betriebssystem zusammenfassen. Nur der korrespondierende Logeintrag zeigt, welche Komponente die Antwort erzeugt hat.
Ursachen
Dienst läuft nicht oder lauscht falsch
Ein Prozess kann als gestartet gelten und trotzdem nur auf 127.0.0.1, einem unerwarteten Port oder der falschen Schnittstelle lauschen. Prüfe deshalb Prozessstatus und Socket gemeinsam. Bei Containern sind Host-Port und Container-Port getrennte Größen; innerhalb eines Docker-Netzwerks zählt der interne Port und der Service-Name.
Konfiguration wurde nicht wirksam
Eine bearbeitete Datei beweist nicht, dass der aktive Prozess sie geladen hat. Include-Reihenfolge, doppelte Definitionen, alte Container oder ein fehlgeschlagener Reload können die erwartete Änderung verhindern. Validiere die vollständig aufgelöste Konfiguration und kontrolliere danach die Prozesszeit.
Abhängigkeit oder Berechtigung fehlt
Dateirechte, Eigentümer, Zertifikate, Storage, DNS und vorgeschaltete Dienste können die Hauptanwendung blockieren. Prüfe die Abhängigkeit direkt mit demselben Benutzer und aus demselben Netzwerk-Kontext. Ein erfolgreicher Test auf dem Host ist nicht automatisch ein erfolgreicher Test im Container.
Protokoll oder Zielname passt nicht
http:// und https:// sind nicht austauschbar. Ebenso können SNI, Host-Header, Service-Name oder Pfad entscheidend sein. Prüfe URL, Port und Protokoll als Einheit, statt nur einzelne Zahlen zu vergleichen.
Diagnose
Ist-Zustand erfassen
cloudflared tunnel info
curl -v http://127.0.0.1:8080/
ss -tlnp
docker ps
docker inspect cloudflared
docker logs --tail 200 cloudflared
Führe nur die Befehle aus, die zu deiner Umgebung passen, und ersetze Platzhalter. Speichere die Ausgabe mit Zeitstempel. Achte auf Statuswechsel, Restarts, Ressourcengrenzen und die erste relevante Fehlermeldung; spätere Folgefehler sind oft weniger aussagekräftig.
Verbindung aus der richtigen Perspektive testen
Teste zuerst direkt am Ziel und danach aus Sicht des Clients. Bei einem Reverse Proxy ist das die Verbindung zum Upstream, bei Docker ein Container im gleichen Netzwerk und bei einer Webanwendung der PHP- oder Applikationsprozess. Verwende curl -v http://127.0.0.1:8080/ beziehungsweise eine passende HTTPS-URL und vergleiche Status, Header und Verbindungsziel.
Logs korrelieren
Filtere cloudflared- und Origin-Logs auf wenige Minuten rund um den Test. Eine klare Reihenfolge ist wichtiger als eine große Logmenge: Anfrage, Verbindungsversuch, Fehler und Antwort müssen zusammenpassen. Fehlt ein Eintrag vollständig, erreicht die Anfrage wahrscheinlich nicht die erwartete Komponente.
Hypothese mit einem Gegenbeispiel prüfen
Formuliere vor jeder Änderung eine prüfbare Aussage, etwa: „Der Prozess lauscht nicht am konfigurierten Port.“ Ein positiver Socket-Test widerlegt diese Aussage; ein negativer Test grenzt sie ein. Dieses Vorgehen verhindert, dass zufällige Neustarts als Lösung missverstanden werden.
Lösung
Korrigiere ausschließlich den bestätigten Unterschied zwischen Soll- und Ist-Zustand. Das kann ein Service-Name, ein interner Port, eine Include-Datei, eine Berechtigung oder ein Protokoll sein. Validiere die Konfiguration vor dem Reload und beobachte unmittelbar danach Status und Logs.
# Vorher sichern und prüfen
cp .backup
# Syntax- oder Konfigurationsprüfung des betroffenen Dienstes
# kontrollierter Reload/Restart erst nach erfolgreicher Prüfung
# denselben Test wie vor der Änderung wiederholen
WARNUNG: Stoppe keine produktiven Dienste und entferne keine Daten, Volumes oder Storage-Zuordnungen ohne aktuelles Backup und Wartungsfenster. Ein Rollback muss vor der Änderung feststehen. Stelle bei einer Verschlechterung die Sicherung wieder her, lade die zuvor gültige Konfiguration und prüfe erneut Status, Listener und Logs.
Bei verteilten Systemen muss die Korrektur an der tatsächlich aktiven Instanz erfolgen. Prüfe Hostname, Container-ID, Node und Deployment-Version. Eine richtige Änderung auf dem falschen Server verändert das Fehlerbild nicht und erzeugt falsche Schlussfolgerungen.
Überprüfung
Wiederhole exakt den ursprünglichen Test und ergänze einen zweiten Test aus der Gegenrichtung. Erwartet werden ein stabiler Prozessstatus, der richtige Listener, eine plausible HTTP-Antwort und keine neuen Fehler im relevanten Logfenster. Beobachte die Umgebung mehrere Minuten, damit Restart-Loops oder verzögerte Abhängigkeiten sichtbar werden.
curl -sS -D - -o /dev/null https://example.com/
ss -tlnp
journalctl --since "5 minutes ago" -p warning
Dokumentiere Sollwert, Messwert und Ergebnis. „Funktioniert wieder“ reicht für spätere Vorfälle nicht aus; Port, Protokoll, Prozess und getesteter Pfad sollten eindeutig sein.
Häufige Fehler
- Mehrere Konfigurationswerte gleichzeitig ändern.
- Nur den öffentlichen Aufruf testen und den internen Pfad auslassen.
- Host-Port und Container-Port verwechseln.
- Alte Logs ohne passenden Zeitstempel auswerten.
- Eine Warnung durch Abschalten von TLS- oder Sicherheitsprüfungen „lösen“.
- Ohne Backup oder definierten Rollback neu starten.
Besonders gefährlich ist eine dauerhafte Ausnahme, die nur den sichtbaren Fehler verdeckt. Behebe Zertifikat, Rechte, Routing oder Konfiguration an der Ursache und entferne temporäre Diagnoseoptionen anschließend wieder.
Verwandte Tools
Für diese Diagnose wurde kein thematisch passendes, verifiziertes ZWLLA-Tool angegeben.
Ähnliche Artikel
- Cloudflare Error 522: Ursachen prüfen und beheben
- Docker-Container startet immer wieder neu
- Nginx-Konfiguration sicher testen und neu laden
FAQ
Warum reicht ein Neustart nicht?
Ein Neustart kann einen Zustand kurzzeitig ändern, erklärt aber nicht die Ursache. Ohne Messung kehrt derselbe Fehler nach Last, Deployment oder Reboot zurück.
Welcher Test sollte zuerst laufen?
Beginne mit Status, Listener und einem lokalen Request. Diese read-only Prüfungen trennen Prozess-, Netzwerk- und Anwendungsebene schnell.
Wann ist Docker der relevante Kontext?
Wenn Client oder Ziel in einem Container laufen. Dann gelten Container-Netzwerk, Service-Name und interner Port; localhost bezeichnet den jeweiligen Container.
Wie erkenne ich HTTP- gegen HTTPS-Probleme?
curl -v zeigt Verbindungsziel, TLS-Handshake, Header und Status. Vergleiche das Ergebnis mit der tatsächlich konfigurierten URL.
Wann sollte ich zurückrollen?
Wenn Validierung fehlschlägt, neue Fehler entstehen oder der ursprüngliche Messwert schlechter wird. Nutze die vorher gesicherte Konfiguration und wiederhole die Prüfung.
Für Cloudflare Tunnel mit Docker Compose: Origin Service richtig konfigurieren gilt außerdem: Halte Umgebung, Version, betroffene Komponente und reproduzierbaren Test zusammen fest. Vergleiche einen funktionierenden und einen fehlerhaften Pfad, statt nur Einzelwerte zu sammeln. So lässt sich unterscheiden, ob Cloudflare-Edge und Origin generell ausfällt oder nur eine konkrete Route, Instanz beziehungsweise Konfiguration betroffen ist. Prüfe nach jeder Änderung erneut denselben Messpunkt und notiere auch negative Ergebnisse; sie verhindern, dass das Team später dieselben Hypothesen wiederholt.
Für Cloudflare Tunnel mit Docker Compose: Origin Service richtig konfigurieren gilt außerdem: Halte Umgebung, Version, betroffene Komponente und reproduzierbaren Test zusammen fest. Vergleiche einen funktionierenden und einen fehlerhaften Pfad, statt nur Einzelwerte zu sammeln. So lässt sich unterscheiden, ob Cloudflare-Edge und Origin generell ausfällt oder nur eine konkrete Route, Instanz beziehungsweise Konfiguration betroffen ist. Prüfe nach jeder Änderung erneut denselben Messpunkt und notiere auch negative Ergebnisse; sie verhindern, dass das Team später dieselben Hypothesen wiederholt.
Für Cloudflare Tunnel mit Docker Compose: Origin Service richtig konfigurieren gilt außerdem: Halte Umgebung, Version, betroffene Komponente und reproduzierbaren Test zusammen fest. Vergleiche einen funktionierenden und einen fehlerhaften Pfad, statt nur Einzelwerte zu sammeln. So lässt sich unterscheiden, ob Cloudflare-Edge und Origin generell ausfällt oder nur eine konkrete Route, Instanz beziehungsweise Konfiguration betroffen ist. Prüfe nach jeder Änderung erneut denselben Messpunkt und notiere auch negative Ergebnisse; sie verhindern, dass das Team später dieselben Hypothesen wiederholt.
Für Cloudflare Tunnel mit Docker Compose: Origin Service richtig konfigurieren gilt außerdem: Halte Umgebung, Version, betroffene Komponente und reproduzierbaren Test zusammen fest. Vergleiche einen funktionierenden und einen fehlerhaften Pfad, statt nur Einzelwerte zu sammeln. So lässt sich unterscheiden, ob Cloudflare-Edge und Origin generell ausfällt oder nur eine konkrete Route, Instanz beziehungsweise Konfiguration betroffen ist. Prüfe nach jeder Änderung erneut denselben Messpunkt und notiere auch negative Ergebnisse; sie verhindern, dass das Team später dieselben Hypothesen wiederholt.
Für Cloudflare Tunnel mit Docker Compose: Origin Service richtig konfigurieren gilt außerdem: Halte Umgebung, Version, betroffene Komponente und reproduzierbaren Test zusammen fest. Vergleiche einen funktionierenden und einen fehlerhaften Pfad, statt nur Einzelwerte zu sammeln. So lässt sich unterscheiden, ob Cloudflare-Edge und Origin generell ausfällt oder nur eine konkrete Route, Instanz beziehungsweise Konfiguration betroffen ist. Prüfe nach jeder Änderung erneut denselben Messpunkt und notiere auch negative Ergebnisse; sie verhindern, dass das Team später dieselben Hypothesen wiederholt.