Dieses Tutorial ist NICHT mehr valid und dient nur noch als historisches Anschauungsmaterial!

Bitte lies Dir den Disclaimer durch, bevor Du eine Anleitung umsetzt...

Haftungsausschluss / Disclaimer

Traefik Docker Container als Reverse-Proxy und Let’s Encrypt Provider

Zugang zum Dashboard testen

Starten wir den Browser unserer Wahl und geben die Adresse unseres Traefik-Dashboards in die URL-Zeile ein. In meinem Fall „traefik.xp-server.de“.

Jetzt sollte uns der Browser anmaulen, dass das Zertifikat nicht passt. Aber keine Sorge: Wir haben ja den Test-Server von Let’s Encrypt beauftragt. Darum bestätigen wir die Warnung und möchten uns die Seite trotzdem anzeigen lassen.

Nun folgt die Passwort-Abfrage und der Browser blendet ein „Benutzername / Passwort“-Abfragefeld ein. Wir geben unseren Benutzernamen und das Passwort ein. Dann sollten wir direkt im „Providers“ Teil des Dashboards landen:

Klicken wir oben auf „Health“, bekommen wir Angaben zu Fehlercodes und der Reaktionszeit von Traefik angezeigt:

OK, Traefik läuft und macht seinen Job. Jetzt schalten wir Let’s Encrypt „scharf“, bevor wir mit unseren Diensten weitermachen…

Let’s Encrypt auf den Produktiv-Server umschalten

Um auf den Produktiv-Server von Let’s Encrypt zu wechseln, schalten wir jetzt den Traefik-Container ab, leeren die „acme.json“-Datei, ändern den Server in der „traefik.toml“ und starten den Container erneut. Das sieht dann so aus:

docker-compose -f /root/docker/traefik-v1/docker-compose.yml down

nano ~/docker/traefik-v1/acme/acme.json
# Datei mit Strg+k leer machen, dann mit Strg-x und y speichern... #

nano ~/docker/traefik-v1/traefik.toml
# CA scharf schalten! #
#caServer = "https://acme-staging-v02.api.letsencrypt.org/directory"  | Hash vor die Zeile setzen!

docker-compose -f /root/docker/traefik-v1/docker-compose.yml up -d

Dann überprüfen wir erneut die Ausgabe des Logs und ob die Datei „acme.json“ neu geschrieben wurde:

docker logs -f --tail="50" traefik-v1
cat ~/docker/traefik-v1/acme/acme.json

Die „uri“-Angabe innerhalb der „Account“-Schleife sollte jetzt nicht mehr den Teil „staging“ in der Adresse enthalten!

Wir öffnen erneut das Traefik-Dashboard im Browser. Mit „Strg + F5“ leeren wir den Cache und jetzt sollte uns ein grünes Schloss entgegen strahlen. Gratulation: Let’s Encrypt liefert uns gültige Zertifikate aus :)

Fazit

Damit läuft Traefik als Reverse-Proxy und wir können ihn für alle weiteren Dienste benutzen, um durch ihn SSL-Zertifikate zu empfangen und die Container über ihre Host-Adresse / URL an das Internet anzubinden!

In nicht ganz 10 Minuten haben wir das Herzstück unseres Docker-Setups installiert, den Traefik Reverse-Proxy.

Sobald die neue Version v2 ausreichend dokumentiert worden ist, werde ich versuchen, dieses Tutorial für v2 neu zu schreiben. Bis dahin aber sollte die v1 noch ein gutes Jahr ihren Dienst tun. Und das sehr schnell und bis jetzt auf dem Testsystem ohne irgendein Problem. Und die Geschwindigkeit von Traefik ist wirklich atemberaubend :)

Aber vor allem der unkomplizierte Zugriff auf Let’s Encrypt über den TLS-ACME-Provider gefällt mir sehr gut. Die Zertifikate werden darüber hinaus von Traefik ohne unser Zutun periodisch auf Gültigkeit überprüft und automatisch erneuert, wenn sie nur noch weniger als 31 Tage gültig sind.

Der DNS-ACME-Provider wäre noch das große „Zuckerl“ oben drauf, aber wie gesagt: Die meisten Domain-Anbieter haben nur einen uneingeschränkten API-Zugang. Das ist mir deutlich zu heiß, diesen hier in der Config zu verwenden…
Bis es da eventuell eine „eingeschränkte“ API gibt, läuft aber auch die TLS-Challenge einwandfrei.

Referenz Links

Anzeige *

2 Kommentare zu „Traefik Docker Container als Reverse-Proxy und Let’s Encrypt Provider“

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Verwendung
von Cookies

Um unsere Webseite für Sie optimal zu gestalten und fortlaufend verbessern zu können, verwenden wir Cookies. Durch die weitere Nutzung der Webseite stimmen Sie der Verwendung von Cookies zu. Weitere Informationen zu Cookies erhalten Sie in unserer Datenschutzerklärung.

Scroll to Top