Skip to content
Home » So richten Sie Traefik Load Balancer mit Docker in Ubuntu 20.04 ein | 15 Latest Answers

So richten Sie Traefik Load Balancer mit Docker in Ubuntu 20.04 ein | 15 Latest Answers

So richten Sie Traefik Load Balancer mit Docker in Ubuntu 20.04 ein

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.

See also  Javax Net Ssl Sslhandshakeexception Received Fatal Alert Handshake_Failure Java? Trust The Answer

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.

See also  Jre Standalone? Top Answer Update

See also  Jqgrid Example? The 6 Latest Answer

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.

Bedarf

  1. Docker und Docker-compose sind installiert
  2. Internetverbindung zum Herunterladen von Docker-Images.
  3. 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

Traefik-Containerstände

Durchsuchen Sie die Website

Öffnen Sie einen Browser und geben Sie Ihren Domainnamen ein http://traefik.ihredomain.com. Die Antwort finden Sie unten.

Der Verkehr dient dem Lastausgleich

Außerdem werden Sie beim Aktualisieren der Seite zum zweiten Backend weitergeleitet. Dies ist der Standard-Routing-Algorithmus von Traefik.

Zweiter Server

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

SSL-Verschlüsselung

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

So richten Sie Traefik Load Balancer mit Docker in Ubuntu 20.04 ein
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.

Leave a Reply

Your email address will not be published. Required fields are marked *