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

Traefik einrichten, installieren und starten

Glücklicherweise hat sich die Angst vor der umfangreichen Konfiguration größtenteils als unbegründet herausgestellt. Wie gesagt: Für das, wofür wir ihn benutzen, ist er sehr einfach einzurichten. (Gilt für v1! v2 ist leider deutlich umständlicher zu konfigurieren…)

Interessant wären „Schwarm“-Konfigurationen in Rechenclustern. Aber da hab ich, und das gebe ich ganz offen zu, meinen Hintern zu weit unten. Von der schieren Anzahl Server einmal abgesehen bräuchte ich auch Seiten, die so massiven Traffic fahren, um ein Cluster-Setup zu rechtfertigen…

Für uns genügt also ein Single-Server Setup. Und da besteht die Konfiguration von Traefik aus drei Dateien, wovon wir nur zwei bearbeiten müssen. In der dritten Datei speichert Traefik die Zertifikate, die er von Let’s Encrypt besorgt, um unsere Dienste später per SSL abzusichern.

Legen wir los!

Traefik Installation vorbereiten

Als Grundlage für die folgende Installation brauchen wir ein laufendes Grundsystem mit Docker und docker-compose, wie wir es im Basis-System Tutorial eingerichtet haben.

Für Traefiks „Dashboard“-Zugang brauchen wir noch eine Benutzername / Passwort Kombination, um diesen nach außen abzusichern. Sonst könnte jeder einfach nachsehen, was bei uns im Netz so los ist. Das wäre… Nicht so toll, ja.

Und wir definieren in Docker noch zwei Netzwerke. Ein internes, in dem unsere Container mit der Datenbank sprechen, und ein externes, in dem Traefik als Brücke ins „World Wide Web“ fungiert.

Im folgenden legen wir einen DNS-Eintrag für das Traefik Dashboard an, erstellen die Konfigurationsdateien, lassen den Traefik-Container von Docker laden und starten unser Setup.

DNS für Traefik Dashboard einrichten

Wir legen einen DNS-Eintrag für das Traefik Dashboard an. Dazu wechseln wir in die Oberfläche unseres Domain-Anbieters. In meinem Fall das „Customer Control Center“ von Netcup. Hier wechseln wir auf unsere Domain, die wir editieren möchten, und dort in den Reiter „DNS“. Wir erstellen eine Sub-Domain „traefik“. Für diesen Test-Server heißt die volle Domain dann „traefik.xp-server.de“. Das wird ein Domain-Eintrag, also vom Typ „A“. Noch die IP des Servers eingeben und die DNS-Einstellung abspeichern.

Nach dem Anlegen des DNS-Eintrags dauert es ein Weilchen, bis sich dieser durch die Schichten des DNS-Systems im Internet ausbreitet. Aber nach 15 bis 45 Minuten sollte der Eintrag „sichtbar“ sein. Überprüfen kann man das mit einem „Ping“ auf den Domainnamen.

Docker-Netzwerke erstellen

Achtung! Alle Konfigurationen werden hier mit dem Benutzer „root“ vorgenommen. Entweder wir arbeiten schon als „root“ oder müssen via „sudo -i“ von unserem normalen Anwender auf den „root“ umschalten. Alternativ können wir auch vor jedes Kommando einen „sudo“ setzen, was aber doch recht umständlich ist…

Wie bereits erwähnt, erstellen wir jetzt in Docker zwei Docker-Netzwerke, um unsere Container darüber untereinander und über Traefik mit dem Internet zu verbinden. Für dieses Setup nenne ich das eine „intern“ und das andere „web“.

docker network create -d bridge intern
docker network create -d bridge web

docker network ls

NETWORK ID          NAME                DRIVER              SCOPE
350ddc77215e        bridge              bridge              local
f9529610d206        host                host                local
f1b72d63a1cc        intern              bridge              local
b909a2157716        none                null                local
c236fa4ed157        web                 bridge              local

Damit haben wir die beiden Netzwerke als „Brücken“ angelegt und mit dem „docker network ls“-Kommando überprüfen wir, ob diese auch korrekt angelegt worden sind. In Deinem Beispiel werden die Netzwerk-IDs natürlich anders lauten…

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