Heim Betrieb und Instandhaltung Nginx So verwenden Sie Dockers Compose, um den Nginx-Lastausgleich zu implementieren

So verwenden Sie Dockers Compose, um den Nginx-Lastausgleich zu implementieren

May 11, 2023 pm 04:13 PM
docker nginx compose

Verwenden Sie die Docker-Netzwerkverwaltung und die Container-IP-Einstellungen als Grundkenntnisse, um den Nginx-Lastausgleich zu implementieren.

Alle Docker-Netzwerke anzeigen.

docker network ls

/*
network id     name         driver       scope
b832b168ca9a    bridge        bridge       local
373be82d3a6a    composetest_default  bridge       local
a360425082c4    host         host        local
154f600f0e90    none         null        local

*/

// composetest_default 是上一篇介绍compose时,docker-compose.yml文件所在的目录名,
// 所以,用docker-compose创建的容器会默认创建一个以目录名为网络名的网络,并且是dridge(桥接)类型
Nach dem Login kopieren
.

Geben Sie die Container-IP-Adresse an wird gestartet und bestätigt, ob das Netzwerk nginx-lsb erstellt wurde .yml und referenzieren Sie sie in der externen .env-Datei. Definieren Sie Variablen

Offizielle Dokumentadresse:

version: "3"
services:
  web1:
    container_name: web1
    image: "centos:httpd"
    ports:
      - "8080:80"
    privileged: true
    volumes:
      - "/app/www/web1/:/var/www/html/"
    command: ['/usr/sbin/init']
    networks:
      nginx-lsb:
        ipv4_address: 192.169.0.3
  web2:
    container_name: web2
    image: "centos:httpd"
    ports:
      - "8081:80"
    privileged: true
    volumes:
      - "/app/www/web2/:/var/www/html/"
    command: ['/usr/sbin/init']
    networks:
      nginx-lsb:
        ipv4_address: 192.169.0.2
networks:
  nginx-lsb:
    driver: bridge
    ipam:
      config:
        - subnet: 192.169.0.0/16
Nach dem Login kopieren

Starten Sie das Composetest-Projekt neu und überprüfen Sie die Netzwerkdetails, um zu bestätigen, ob die Container-IP erfolgreich festgelegt wurde.

docker-compose up -d
Nach dem Login kopieren

Fügen Sie einen Nginx-Server als hinzu Lastausgleichsserver im Composetest-Projekt

// 可以查看当前docker-compose.yml配置的容器组里的容器状态
docker-compose ps

docker network ls

/*
network id     name          driver       scope
b832b168ca9a    bridge         bridge       local
373be82d3a6a    composetest_default   bridge       local
de6f5b8df1c8    composetest_nginx-lsb  bridge       local
a360425082c4    host          host        local
154f600f0e90    none          null        local
*/

// 创建了nginx-lsb网络,命名是容器组项目的 文件名开头_网络名
Nach dem Login kopieren

Nginx. conf-Konfigurationsdatei ändern, Lastausgleich konfigurieren

docker network inspect composetest_nginx-lsb

// 详情里面可以看到使用这个网络的每个容器的ip

如:

/*
...
 "containers": {
      "039aa860ef04f20a7566fdc943fb4398a61d2ad6dd3e373b17c86ac778af89e3": {
        "name": "web2",
        "endpointid": "1bc206661179e65999015f132c2889d3d4365b8d42b8a89cf9c260016fedd5ee",
        "macaddress": "02:42:c0:a9:00:02",
        "ipv4address": "192.169.0.2/16",
        "ipv6address": ""
      },
      "437ad7a07da8e46c0abaf845c4b08425338009fbe972bde69478cf47c75c315b": {
        "name": "web1",
        "endpointid": "5a36e602a5364ee9ad06e9816d09e3966d56ebf06b9394ebc25b8bcee9546607",
        "macaddress": "02:42:c0:a9:00:03",
        "ipv4address": "192.169.0.3/16",
        "ipv6address": ""
      }
    },
...
*/
Nach dem Login kopieren

Nginx-lsb neu starten, Konfigurationsdatei laden

// 还是在composetest目录中定义个 .env文件,用来存放变量
web1_addr=192.169.0.2
web2_addr=192.169.0.3

// 修改docker-compose.yml文件,加入变量定义
version: "3"
services:
  web1:
    container_name: web1
    image: "centos:httpd"
    ports:
      - "8080:80"
    privileged: true
    volumes:
      - "/app/www/web1/:/var/www/html/"
    command: ['/usr/sbin/init']
    networks:
      nginx-lsb:
        ipv4_address: ${web1_addr}
  web2:
    container_name: web2
    image: "centos:httpd"
    ports:
      - "8081:80"
    privileged: true
    volumes:
      - "/app/www/web2/:/var/www/html/"
    command: ['/usr/sbin/init']
    networks:
      nginx-lsb:
        ipv4_address: ${web2_addr}
networks:
  nginx-lsb:
    driver: bridge
    ipam:
      config:
        - subnet: 192.169.0.0/16
Nach dem Login kopieren

Besuchen Sie http://Server-IP-Adresse:8000, testen Sie den Lastausgleich des Servers !

Das obige ist der detaillierte Inhalt vonSo verwenden Sie Dockers Compose, um den Nginx-Lastausgleich zu implementieren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So ändern Sie die Docker -Bildquelle in China So ändern Sie die Docker -Bildquelle in China Apr 15, 2025 am 11:30 AM

Sie können zur Quelle der Inlandsspiegel wechseln. Die Schritte sind wie folgt: 1. Bearbeiten Sie die Konfigurationsdatei /etc/docker/daemon.json und fügen Sie die Spiegelquellenadresse hinzu; 2. Starten Sie den Docker Service Sudo SystemCtl Docker neu, um die Download -Geschwindigkeit und -stabilität des Bilddownloads zu verbessern.

So erstellen Sie einen Spiegel in Docker So erstellen Sie einen Spiegel in Docker Apr 15, 2025 am 11:27 AM

Schritte zum Erstellen eines Docker -Images: Schreiben Sie eine Dockerfile, die die Build -Anweisungen enthält. Erstellen Sie das Bild im Terminal mit dem Befehl Docker Build. Markieren Sie das Bild und weisen Sie Namen und Tags mit dem Befehl Docker Tag zu.

So verwenden Sie Docker Desktop So verwenden Sie Docker Desktop Apr 15, 2025 am 11:45 AM

Wie benutze ich Docker Desktop? Docker Desktop ist ein Werkzeug zum Ausführen von Docker -Containern auf lokalen Maschinen. Zu den zu verwendenden Schritten gehören: 1.. Docker Desktop installieren; 2. Start Docker Desktop; 3.. Erstellen Sie das Docker -Bild (mit Dockerfile); 4. Build Docker Image (mit Docker Build); 5. Docker -Container ausführen (mit Docker Run).

So führen Sie den Befehl Docker aus So führen Sie den Befehl Docker aus Apr 15, 2025 am 11:24 AM

Wie reite ich Docker -Befehle aus? Installieren Sie Docker und starten Sie den Daemon. Common Docker -Befehle: Docker Bilder: Anzeige Bild Docker PS: Anzeige Container Docker Ausführen: Ausführen Container Docker Stopp: Stopp Container Docker RM: Löschen Sie Container Interagieren Sie mit Container mit Docker -Befehl: Dokker Exec: Execute -Befehl Dockker Anhang: Anhängen Konsole Docker Protokolls: Display LOCKER DOCKER Commit Wechsel zum Mirror Stop Dokker

So erstellen Sie ein privates Repository von Docker So erstellen Sie ein privates Repository von Docker Apr 15, 2025 am 11:06 AM

Sie können Docker -private Repositorys erstellen, um Containerbilder sicher zu speichern und zu verwalten und strenge Kontrolle und Sicherheit bereitzustellen. Zu den Schritten gehören: Erstellen eines Repositorys, Gewährung von Zugriff, Bereitstellung eines Repositorys, Drückens eines Bildes und Ziehen eines Bildes. Zu den Vorteilen gehören Sicherheit, Versionskontrolle, reduzierter Netzwerkverkehr und Anpassung.

So rufen Sie Docker lnmp an So rufen Sie Docker lnmp an Apr 15, 2025 am 11:15 AM

Docker LNMP Container Anrufschritte: Führen Sie den Container aus: Docker Run -d --Name LNMP -Container -P 80:80 -P 443: 443 LNMP -Stack, um den Container IP zu erhalten: Docker Inspecy Lnmp -Container | GREP iPaddress Access Website: http: // & lt; Container IP & gt;/index.phpssh Access: Docker Exec -it lnmp -container Bash Access MySQL: Mysql -U Roo

So speichern Sie das Docker -Bild So speichern Sie das Docker -Bild Apr 15, 2025 am 11:54 AM

Um das Bild in Docker zu speichern, können Sie den Befehl docker comit verwenden, um ein neues Bild zu erstellen, das den aktuellen Status des angegebenen Containers Syntax: Docker Commit [Optionen] Container -ID -Bildname enthält. Um das Bild im Repository zu speichern, können Sie den Befehl Docker Push, Syntax: Docker -Push -Bildname [: Tag] verwenden. Um gespeicherte Bilder zu importieren, können Sie den Befehl Docker Pull, Syntax: Docker Pull Bildname [: Tag] verwenden.

So aktualisieren Sie das Bild von Docker So aktualisieren Sie das Bild von Docker Apr 15, 2025 pm 12:03 PM

Die Schritte zur Aktualisierung eines Docker -Images sind wie folgt: Ziehen Sie das neueste Bild -Tag. Neues Bild Löschen Sie das alte Bild für ein bestimmtes Tag (optional) den Container neu (falls erforderlich) neu starten Sie neu (falls erforderlich).

See all articles