Aktueller Standort: Startseite> Neueste Artikel> So konfigurieren Sie den NGINX -Proxy im Docker -Container, um die elastische Skalierungsfähigkeit von Webdiensten zu verbessern

So konfigurieren Sie den NGINX -Proxy im Docker -Container, um die elastische Skalierungsfähigkeit von Webdiensten zu verbessern

M66 2025-06-19

So konfigurieren Sie den NGINX -Proxy im Docker -Container, um die elastische Skalierungsfähigkeit von Webdiensten zu verbessern

In der Zeit des Cloud Computing ist es sehr wichtig sicherzustellen, dass Webdienste eine hohe Verfügbarkeit und hohe Leistung aufweisen. Die elastische Skalierung ist eine effektive Lösung, um sich an Verkehrsänderungen durch dynamisch Skalierungsressourcen anzupassen. Die Kombination von Docker und Nginx bietet uns eine leistungsstarke architektonische Lösung für einfache Lastausgleich und elastische Skalierungsfunktionen von Webdiensten.

Erstellen Sie einen grundlegenden Webdienst

Zunächst müssen wir einen einfachen Webdienst erstellen, um zu testen. Hier verwenden wir die Frameworks node.js und express.js, um eine einfache "Hello World" -Anwendung zu erstellen. Hier ist der Code für die Anwendung:

const express = forderung ('express');
const App = express ();

app.get ('/', (req, res) => {
    res.send ('Hallo, Welt!');
});

app.listen (3000, () => {
    console.log ('Server läuft auf Port 3000');
});

Als nächstes müssen wir diese Anwendung mit Docker containieren. Erstellen Sie eine Dockerfile im Stammverzeichnis des Projekts mit dem folgenden Inhalt:

# Dockerfile
Vom Knoten: Alpine

WorkDir /App

Paket*.json ./

Führen Sie die NPM -Installation aus

Kopie. .

3000 entdecken

CMD ["Knoten", "App.js"]

Diese DockerFile definiert die Alpine -Version von Node.js Bild, richten Sie das Arbeitsverzeichnis ein, installieren Abhängigkeiten und führen die Anwendung node.js aus, wenn der Container startet.

Bauen und führen Sie Docker -Container auf

Erstellen und führen Sie den Docker -Container mit dem folgenden Befehl aus:

$ Docker Build -t MyApp.
$ docker run -dp 3000: 3000 myapp

Nach der Ausführung kartiert der Container 3000 Ports, wodurch die Anwendung über die IP -Adresse des Hosts zugreifen kann.

Konfigurieren Sie den NGINX -Proxy -Server

Um Lastausgleich und elastische Skalierung von Webdiensten zu erreichen, müssen wir Nginx als Reverse -Proxy -Server konfigurieren. Installieren Sie zunächst NGINX und bearbeiten Sie die Konfigurationsdatei:

$ sudo apt-Get-Update
$ sudo apt-get install nginx
$ sudo nano /etc/nginx/conf.d/default.conf

Fügen Sie in der NGINX -Konfigurationsdatei Folgendes hinzu:

# /etc/nginx/conf.d/default.conf
Upstream app_servers {
    # Geben Sie hier die IP- und Portinformationen für IP- und Portinformationen des Docker -Containers aus, und es kann mehrere Server geben<CONTAINER_IP> : 3000;
}

Server {
    Hören Sie 80;

    Standort / {
        proxy_pass http: // app_servers;
        proxy_set_header host $ host;
        proxy_set_header x-real-ip $ remote_addr;
    }
}

Hier definieren wir eine "app_servers" -Gruppe, um Docker -Container -Instanzen zu enthalten. Nginx wird Anfragen an diese Containerinstanzen proxy und erreichen so einen Lastausgleich.

Starten Sie den Nginx -Service neu

Starten Sie nach dem Speichern und Verlassen der Konfigurationsdatei den Nginx -Dienst neu, um die neue Konfiguration anzuwenden:

$ sudo service nginx neu starten

Elastische Expansion und Kontraktion erreichen

Durch die Konfiguration des Lastausgleichs für NGINX wird die Ausdehnung von Behältern sehr einfach. Wenn Sie eine Containerinstanz hinzufügen müssen, müssen Sie nur eine neue Docker -Containerinstanz ausführen, und Nginx erkennt automatisch den Datenverkehr an den neuen Container.

Zusammenfassen

Durch Containerisieren von Webanwendungen und das Konfigurieren eines Nginx-Proxy-Servers können wir eine hoch verfügbare Hochleistungs-elastische Skalierungsarchitektur implementieren. Die Kombination von Docker und Nginx bietet uns nicht nur eine einfache Containerlösung, sondern macht das Lastausgleich und das Verkehrsmanagement flexibler und effizienter. Ich hoffe, dieser Artikel hilft Ihnen zu verstehen, wie Sie den NGINX -Proxy -Server in Docker -Containern konfigurieren, um die elastischen Skalierungsfunktionen von Webdiensten zu verbessern.