← Zurück zum Blog

Traefik vs. Caddy – welcher Reverse-Proxy passt zu dir?

Traefik vs. Caddy – welcher Reverse-Proxy passt zu dir?

Beide sind modern, beide können Auto-TLS mit Let's Encrypt, beide brauchen keine klassische Config wie Nginx oder Apache. Aber Traefik und Caddy verfolgen grundverschiedene Ansätze. Welcher für dich besser ist, hängt vor allem davon ab, wie dein Setup aussieht.

Kurzfassung

Kriterium Traefik Caddy
Konfiguration Labels/CRDs Caddyfile (einfach)
Auto-TLS ja ja
Docker-Integration nativ (Service Discovery) via Adapter
Dynamische Backends erstklassig manuell
Ressourcenverbrauch etwas höher leichter
Lernkurve steiler flach
Plugins viele (mittlerweile) überwachsendes Ökosystem

Traefik: der Orchestrator-Proxy

Traefik ist darauf ausgelegt, in dynamischen Umgebungen zu leben – Docker, Kubernetes, Consul, Nomad. Es beobachtet die Orchestrierungs-API und leitet Traffic automatisch an neue Container weiter.

Vorteile

  • Service Discovery direkt aus Docker: Ein Container bekommt Labels, Traefik erkennt ihn und legt automatisch eine Route an
  • Middleware-Konzept: Rate-Limiting, Basic Auth, Headers – alles als Middleware konfigurierbar
  • Dashboard: grafische Übersicht aller Router, Services und Middleware
  • Multi-Provider: Docker, Kubernetes, Datei, Consul, etc. – alles parallel nutzbar

Nachteile

  • Overhead für kleine Setups: Ein Redis oder eine komplexe Middleware-Kette braucht man zu Hause oft nicht
  • Dokumentation: vollständig, aber manchmal unübersichtlich, weil sehr viele Provider abgedeckt werden
  • Ressourcen: Traefik braucht mehr RAM (~30–50 MB) als Caddy

Ideales Einsatzszenario: Du betreibst 10+ Container auf einem Docker-Host und willst, dass neue Dienste automatisch erreichbar sind, ohne die Reverse-Proxy-Config anzufassen.

Caddy: der Simple-Proxy

Caddy konzentriert sich auf das Wesentliche: HTTPS, einfache Konfiguration, geringe Komplexität. Es wird über ein Caddyfile konfiguriert, das deutlich lesbarer ist als Nginx-Configs.

meinedomain.de {
    reverse_proxy localhost:8080
}

Das war's – inklusive automatischem Let's Encrypt.

Vorteile

  • Einfachheit: Einsteiger kommen nach 5 Minuten zum ersten laufenden Setup
  • Auto-HTTPS: Kein Certbot, kein manuelles Renew – Caddy kümmert sich um alles
  • Leichtgewichtig: ~10–20 MB RAM, minimaler CPU-Fußabdruck
  • Gute Doku: caddyserver.com/docs ist klar, praxisnah und durchsuchbar

Nachteile

  • Kein natives Docker Service Discovery: Du musst Container-Namen oder IPs manuell im Caddyfile angeben (oder via Docker-Socket-Gen)
  • Dynamik: Fügst du einen neuen Container hinzu, muss das Caddyfile aktualisiert und Caddy neu geladen werden
  • Middleware-Ökosystem: kleiner als bei Traefik, aber die wichtigsten Bausteine (Auth, Rate-Limit, Headers) sind vorhanden

Ideales Einsatzszenario: Du hast 2–5 Dienste, ein überschaubares Setup und willst einfach nur, dass alles mit HTTPS läuft – ohne dich durch Provider-Doku zu kämpfen.

Und was ist mit Nginx Proxy Manager?

Der NPM ist eine UI-Schicht über Nginx – einfach, aber proprietär in der UI und weniger flexibel, sobald man spezielle Konfiguration braucht. Für absolute Anfänger eine Option, aber Traefik und Caddy sind langfristig die bessere Wahl.

Entscheidungsmatrix

Situation Empfehlung
Einsteiger, 2–3 Dienste Caddy
Docker-Schwarm / viele Container Traefik
Minimaler Ressourcenverbrauch Caddy
Automatisierung pur Traefik
Kubernetes Traefik (IngressRoute CRDs)
Lernprojekt / Basteln Caddy (schnelle Erfolge)
Produktiv mit vielen Domains Traefik

Mein Fazit

Ich selbst setze Caddy im Homeserver ein und bin damit glücklich – vier Dienste, zwei Domains, null Wartung. Würde ich auf 15+ Container hochskalieren oder dynamische Ports nutzen, wäre Traefik der logische nächste Schritt.

Beide sind hervorragende Projekte. Die Frage ist nicht "was ist besser", sondern "was passt zu meinem Setup".