In diesem Beitrag zeige ich euch die aktuellste Möglichkeit, den beliebten Reverse-Proxy-Server Traefik auf einem Hostsystem mit Linux Ubuntu 22.04 zu installieren. Zum Zeitpunkt der Artikelerstellung ist die Version 2.11 die aktuellste Veröffentlichung, die wir in Schritt-für-Schritt über eine Terminalsitzung installieren.
Wir verwenden in dieser Anleitung die Containersoftware Docker und Docker Compose. Das ist auch die schnellste und womöglich beste Option für die Installation von Traefik unter UNIX-basierten Servern. Die Anleitung funktioniert selbstverständlich auch auf anderen APT-basierten Distributionen wie z.B. Linux Debian oder auf dem Raspberry Pi.
Inhaltsverzeichnis: Schritt-für-Schritt-Anleitung für die Installation von Traefik unter Docker mit Docker Compose
Was ist Traefik? Funktionen und Einsatzmöglichkeiten der Open-Source-Software
Traefik ist ein Open-Source-Reverse-Proxy mit Lastverteilung, der speziell für Containerumgebungen wie Docker und Kubernetes sowie moderne Mikrodienstarchitekturen entwickelt wurde.
Nach der Installation ermöglicht Traefik die automatische Erkennung von netzwerkbezogenen Diensten und erlaubt dynamische Konfigurationen. Durch Bewertung des Datenverkehrs verteilt es die Last auf verschiedene Server oder Container, um Dienste vor Überlastungen zu schützen. Die Software unterstützt automatische SSL/TLS-Terminierung für Orchestrierungswerkzeuge.
Insgesamt vereinfacht Traefik die Verwaltung und Bereitstellung von Webanwendungen und -diensten durch die Automatisierung von Routing- und Proxyaufgaben. Im Vergleich zu Alternativen wie dem beliebten Nginx Proxy Manager bietet Traefik spezifische Vorteile für Containerinfrastrukturen.
Vorbereitungen für die Installation von Traefik mit Docker-Compose: Aktualisierungen durchführen
Bevor wir damit beginnen, den Reverse-Proxy Traefik auf dem System zu installieren, hat es sich in der Vergangenheit bewährt, den Host und die bereits installierten Pakete auf dem neuesten Stand zu bringen.
Unter APT-basierten Distributionen verwenden wir die üblichen Befehle zum Aktualisieren:
sudo apt update -y && sudo apt upgrade -y
Docker herunterladen und installieren
Wir beziehen die aktuellste Version von Docker aus der offiziellen Quelle und führen den Download mithilfe des curl-Befehls durch.
Überprüfe zunächst, ob curl auf deinem Server vorhanden ist:
sudo apt-get install curl
Die Docker-Software herunterladen:
curl -fsSL https://get.docker.com -o get-docker.sh
Führe anschließend das Installations-Skript aus, um Docker auf dem System zu installieren:
sudo sh get-docker.sh
Um sicherzustellen, dass die Software auch nach einem Systemneustart automatisch gestartet wird, fügen wir Docker dem Systemstart hinzu:
sudo systemctl start docker
sudo systemctl enable docker
Die aktuell installierte Version kann mit dem folgenden Befehl überprüft werden:
docker --version
Installation von Docker Compose
Jetzt benötigen wir noch Docker Compose und eine Verzeichnisstruktur für Traefik. Beginnen wir mit dem Herunterladen. Wir werden die neueste verfügbare Version auf unserem Server mit Linux Ubuntu 22.04 installieren.
Docker Compose herunterladen und installieren:
sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
Berechtigungen vergeben:
sudo chmod +x /usr/local/bin/docker-compose
In diesem Schritt erstellen wir ein Verzeichnis für Traefik, in dem die YML-Datei für die Ausführung von Traefik erstellt wird.
Navigiere dafür in das Home-Verzeichnis des angemeldeten Benutzers:
cd /home/user
Lege ein neues Verzeichnis an:
mkdir traefik
Navigiere in das soeben erstellte Verzeichnis:
mkdir traefik
Erstelle eine docker-compose.yml-Datei mit der neuesten Version von Traefik:
sudo nano docker-compose.yml
Hinweis: Die neueste Version von Traefik kann auf GitHub eingesehen werden: https://github.com/traefik/traefik Überprüfe, ob die Version 2.11 noch die aktuellste ist. Falls in der Zwischenzeit eine neuere Version von Traefik veröffentlicht wurde, kann die Versionsnummer in der Zeile „image“ bei Bedarf angepasst werden.
Kopiere den folgenden Inhalt und füge ihn in die noch leere YML-Datei ein:
version: "3.3"
services:
traefik:
image: "traefik:v2.11"
container_name: "traefik"
command:
#- "--log.level=DEBUG"
- "--api.insecure=true"
- "--providers.docker=true"
- "--providers.docker.exposedbydefault=false"
- "--entrypoints.web.address=:80"
ports:
- "80:80"
- "443:443"
- "8080:8080"
volumes:
- "/var/run/docker.sock:/var/run/docker.sock:ro"
- ".letsencrypt:/letsencrypt"
whoami:
image: "traefik/whoami"
container_name: "simple-service"
labels:
- "traefik.enable=true"
- "traefik.http.routers.whoami.rule=Host(`whoami.localhost`)"
- "traefik.http.routers.whoami.entrypoints=web"
Speichere die Änderungen (STRG+S) und verlasse den Editor (STRG+X). Anschließend erstellen wir eine neue Gruppe und vergeben die erforderlichen Berechtigungen zum Ausführen des Docker-Daemons. Andernfalls könnten wir nur als Root-Benutzer Dienste wie Traefik ausführen, was ein Sicherheitsrisiko darstellen würde.
Eine neue Docker-Gruppe anlegen:
sudo usermod -aG docker user
Berechtigungen einräumen:
sudo chmod 666 /var/run/docker.sock
Traefik starten und die Web-Benutzeroberfläche im Browser aufrufen
Jetzt, da alle Vorbereitungen für die Installation von Traefik erfolgreich abgeschlossen sind, können wir Traefik mit einem einzigen Befehl auf unserem Hostsystem starten.
Traefik starten:
docker-compose up -d
Manchmal gibt es Gründe, den Reverse-Proxy Traefik auf dem Host zu stoppen, zum Beispiel, um auf eine neue Version zu aktualisieren. Das kann mit dem folgenden Befehl erreicht werden.
Traefik stoppen:
docker-compose down
Nun ist es an der Zeit, die Web-Oberfläche von Traefik mit dem Browser aufzurufen. Die Installation von Traefik unter Linux mit Docker und Docker Compose ist zu diesem Zeitpunkt erfolgreich abgeschlossen. Verwende einen beliebigen Client im selben lokalen Netzwerk und rufe jetzt die IP-Adresse deines Servers, gefolgt von Port 8080 (siehe Beispiel), im Browser auf.
Beispiel IP-Adresse für den Zugriff auf das Traefik Dashboard:
http://192.168.10.10:8080
Hinweis: Wenn nach der Installation kein Zugriff auf die Weboberfläche von Traefik möglich ist, könnte eine Firewall auf dem Hostsystem Anfragen blockieren. Stelle sicher, dass die Ports 80, 8080 und gegebenenfalls 443 in den Firewallregeln geöffnet sind. Unter Linux Ubuntu 22.04 und bei Verwendung der UFW lautet der Befehl: „ufw allow <port>“.
Zusammenfassung: Installation von Traefik unter Linux Ubuntu 22.04 abgeschlossen
In diesem Installations-Tutorial haben wir lediglich die Grundinstallation durchgeführt, jedoch nicht die Bedienung und Konfiguration von Traefik behandelt. Der Reverse-Proxy ist aufgrund seiner Benutzerfreundlichkeit und einfachen Handhabung eine der beliebtesten Softwarelösungen in diesem Bereich. Insbesondere für Docker-Container, die über das Internet erreichbar sein sollen, hat sich Traefik als ausgezeichnete Lösung etabliert. Habt ihr Fragen zur Installation, Konfiguration oder zu allgemeinen Themen rund um Reverse-Proxy-Server und Traefik, könnt ihr gerne die Kommentarfunktion unter diesem Beitrag verwenden.
Hallo, sehr interessanter Beitrag! Es wäre wohl noch nützlich gewesen einen kurzen Abschnitt der Aufgabe bzw Funktion eines Reverse Proxy zu widmen.
Übrigens ist in der Installationsbeschreibung von Traefik ein kleiner Fehler, da im Schritt „Navigiere in das soeben erstellte Verzeichnis:“ der Befehl „$ mkdir traefik“ anstelle von „$ cd traefik“ steht 🙂