Schauen Sie sich die Themenartikel So richten Sie Traefik Load Balancer mit Docker in Ubuntu 20.04 ein in der Kategorie an: Wiki bereitgestellt von der Website Artaphoamini.
Weitere Informationen zu diesem Thema So richten Sie Traefik Load Balancer mit Docker in Ubuntu 20.04 ein finden Sie in den folgenden Artikeln: Wenn Sie einen Beitrag haben, kommentieren Sie ihn unter dem Artikel oder sehen Sie sich andere Artikel zum Thema So richten Sie Traefik Load Balancer mit Docker in Ubuntu 20.04 ein im Abschnitt „Verwandte Artikel an.
Traefik ist ein moderner Reverse-Proxy und Load Balancer, der Load Balancing 4 (TCP) und 7 (HTTP) unterstützt. Seine Konfiguration kann im JSON-, YML- oder TOML-Format definiert werden. Es besteht aus einem Einstiegspunkt (Frontend), einem Dienst (Backend), einem Router (Regeln), einer Middleware (optionale Dienste).
Dieser Artikel zeigt, wie Sie Traefik Load Balancer im Layer 7 (HTTP)-Modus verwenden.
Inhalt
Bedarf
- Docker und Docker-compose sind installiert
- Internetverbindung zum Herunterladen von Docker-Images.
- Weisen Sie der Domain einen DNS-Eintrag zu, um ein Let's Encrypt-Zertifikat zu erhalten (z. B. traefik.yourdomain.com)
Gebäude
Ich starte zwei Backend-Server (nginx-Container) und einen Traefik-Container im selben Docker-Netzwerkbereich. Ich verwende Traefik.yourdomain.com, um dies zu erklären. Sie benötigen Ihre Domain.
Beginnen wir mit der Erstellung des Verzeichnisses für den Home-Speicherort.
$ mkdir traefik && cd traefik
Erstellen Sie nun mit diesem Befehl ein Docker-Netzwerk. Dies wird ihm helfen, zu dem Schiff mit seinem Namen zu gelangen.
$ docker community create web_zone
Traefik.yaml-Konfiguration
Erstellen Sie zunächst eine Datei namens traefik.yaml:
$ vim traefik.yaml
und fügen Sie den folgenden Inhalt ein.
# Static configuration entryPoints: unsecure: deal with: :80 safe: deal with: :443 certificatesResolvers: myresolver: acme: e mail: [email protected] storage: acme.json httpChallenge: entryPoint: unsecure suppliers: file: filename: tls.yaml watch: true
Erläuterung
- Einstiegspunkte sind Dinge wie Front-End-Schalterdienste und Häfen.
- CertificResolvers Letsencrypt kann verwendet werden, um ein Zertifikat anzufordern.
- Anbieter sind Router/Dateien, die zum Definieren von Software und Diensten benötigt werden
Konfiguration des Dateianbieters
Erstellen Sie nun eine weitere Datei, die im Abschnitt supplier im selben Verzeichnis definiert ist:
$ vim tls.yaml
und legen Sie die folgende Yaml-Konfiguration fest.
http: routers: http_router: rule: "Host(`traefik.yourdomain.com`)" service: allbackend https_router: rule: "Host(`traefik.yourdomain.com`)" service: allbackend tls: certResolver: myresolver choices: tlsoptions providers: allbackend: loadBalancer: servers: - url: "http://myserver1/" - url: "http://myserver2/" tls: choices: tlsoptions: minVersion: VersionTLS12
Erläuterung
- Der Zweck des Abschnitts routers besteht darin, die Route zu definieren. Wir haben zwei Routen: http und https
- Backends werden in Diensten definiert, Sie können auch Lastausgleichsalgorithmen angeben.
- tls, um die TLS-Konfiguration und -Optionen zu definieren.
Erstellen Sie wie in der Datei angegeben die folgende Datei, um das Let’s Encrypt-Zertifikat zu speichern.
$ contact acme.json
$ chmod 600 acme.json
Docker-Compose für Traefik
Ich erstelle einen Container mit Docker Compose und bilde 80 Port 443 ab. Geben Sie den Domänennamen ein. Erstellen Sie eine docker-compse.yml-Datei:
$ vim docker-compose.yml
und setze diese Konfiguration:
model: '3' providers: traefik: picture: traefik:newest command: --docker --docker.area=yourdomain.com ports: - 80:80 - 443:443 networks: - web_zone volumes: - /run/docker.sock:/run/docker.sock - ./traefik.yaml:/traefik.yaml - ./tls.yaml:/tls.yaml - ./acme.json:/acme.json container_name: traefik restart: at all times networks: web_zone: exterior: true
Hintergrundserver
Lassen Sie uns nun zwei Backend-Server mit dem Nginx-Image ausführen. Erstellen Sie zuerst ein Verzeichnis, z
$ mkdir ~/traefik/backend && cd ~/traefik/backend/
Erstellen Sie zwei Indexdateien wie unten gezeigt.
echo "<h1> Hello server 1</h1>" > index-server1.html
echo "<h1> Hello server 2</h1>" > index-server2.html
Docker-Build-Datei zum Ausführen von zwei Nginx-Servern
Unten ist eine einfache Kompositionsdatei, die zwei Nginx-Container erstellt. Erstellen Sie eine Docker-compse.yml-Datei:
$ vim docker-compose.yml
und setze diese Konfiguration:
model: '3' providers: myserver1: picture: nginx container_name: nginx1 restart: at all times volumes: - ./index-server1.html:/usr/share/nginx/html/index.html networks: - web_zone myserver2: picture: nginx container_name: nginx2 restart: at all times volumes: - ./index-server2.html:/usr/share/nginx/html/index.html networks: - web_zone networks: web_zone: exterior: true
Starten Sie die Docker-Container
Starten Sie nun den Container. Erstellen Sie zunächst das nginx-Backup-Repository mit diesem Befehl.
$:~/traefik/backend$ docker compose up -d
Sie sollen in zwei Containern laufen. Bestätigen Sie, indem Sie den Befehl ausführen.
[email protected]:~/traefik/backend$ docker ps
Gehen Sie nun zurück in das Verzeichnis und führen Sie diesen Befehl aus, um den Traefik-Load-Balancer zu starten.
$:~/traefik$ docker compose up -d
Stellen Sie sicher, dass der Traefik-Speicher betriebsbereit ist.
$:~/traefik$ docker ps
Durchsuchen Sie die Website
Öffnen Sie einen Browser und geben Sie Ihren Domainnamen ein http://traefik.ihredomain.com. Die Antwort finden Sie unten.
Außerdem werden Sie beim Aktualisieren der Seite zum zweiten Backend weitergeleitet. Dies ist der Standard-Routing-Algorithmus von Traefik.
Sie können auch überprüfen, ob das Zertifikat von letsencrypt ausgestellt wurde, während der Container ausgeführt wird. Einfach stöbern https://traefik.ihredomain.com
Fazit
Sie lernen, wie Sie Traefik als Load Balancer für Ihren Docker-Container verwenden. Weitere Informationen finden Sie auf der offiziellen Website https://doc.traefik.io/traefik/ . Vielen Dank.
Einige Bilder zum Thema So richten Sie Traefik Load Balancer mit Docker in Ubuntu 20.04 ein
Einige verwandte Schlüsselwörter, nach denen die Leute zum Thema suchen So richten Sie Traefik Load Balancer mit Docker in Ubuntu 20.04 ein
#richten #Sie #Traefik #Load #Balancer #mit #Docker #Ubuntu #ein
Weitere Informationen zu Schlüsselwörtern So richten Sie Traefik Load Balancer mit Docker in Ubuntu 20.04 ein auf Bing anzeigen
(*15*)
Die Anzeige von Artikeln zum Thema So richten Sie Traefik Load Balancer mit Docker in Ubuntu 20.04 ein ist beendet. Wenn Sie die Informationen in diesem Artikel nützlich finden, teilen Sie sie bitte. vielen Dank.