Nginx Proxy Manager · 15 min read · Nov 20, 2025

So installieren und verwenden Sie den Nginx Proxy Manager mit Docker

Ein Reverse-Proxy ist ein Webserver, der vor einem anderen Webserver oder einem Webdienst sitzen kann. Er kann ausgehenden Datenverkehr verschlüsseln, als Lastenausgleich fungieren, den Datenverkehr umleiten und Schutz bieten. Der Nginx-Webserver kann als Proxy-Server vor traditionellen Servern verwendet werden, aber manchmal kann die Einrichtung mühsam sein und Probleme verursachen, wenn sie nicht richtig durchgeführt wird.

Der Nginx Proxy Manager ist eine Anwendung, die die Einrichtung von Nginx als Proxy-Server erleichtert, indem sie eine grafische Benutzeroberfläche (GUI) mit Funktionen wie integrierter SSL-Unterstützung über Let’s Encrypt, Unterstützung für mehrere Hosts, HTTP-Authentifizierung, Zugrifflisten und Benutzerverwaltung bereitstellt.

Dieses Tutorial zeigt Ihnen, wie Sie den Nginx Proxy Manager auf einem Linux-Server mit Docker installieren. Wir werden alle gängigen Linux-Distributionen in einem einzigen Tutorial abdecken.

Voraussetzungen

  • Ein Linux-Server, der Ubuntu/Debian/CentOS/Alma Linux/Rocky Linux mit mindestens 1 GB RAM ausführt.
  • Ein Nicht-Root-Benutzer mit Sudo-Rechten.
  • Ein vollqualifizierter Domainname (FQDN) wie npm.example.com, der auf den Server zeigt.

Schritt 1 - Firewall konfigurieren

Cent OS/Rocky Linux/Alma Linux

Sie sollten die Firewalld-Firewall installiert haben. Überprüfen Sie den Status der Firewall.

$ sudo firewall-cmd --state
running

Öffnen Sie die Ports 80, 81 und 443.

$ sudo firewall-cmd --permanent --add-service=http
$ sudo firewall-cmd --permanent --add-service=https
$ sudo firewall-cmd --permanent --add-port=81/tcp

Laden Sie die Firewall neu, um die Änderungen zu aktivieren.

$ sudo firewall-cmd --reload

Ubuntu/Debian

Ubuntu- und Debian-Systeme verwenden standardmäßig ufw (Uncomplicated Firewall).

Überprüfen Sie, ob die Firewall läuft.

$ sudo ufw status

Wenn sie läuft, öffnen Sie die Ports 80, 81 und 443.

$ sudo ufw allow 80
$ sudo ufw allow 81
$ sudo ufw allow 443

Öffnen Sie den SSH-Port, wenn die Firewall nicht läuft.

$ sudo ufw allow "OpenSSH"

Aktivieren Sie die Firewall, wenn sie nicht läuft.

$ sudo ufw enable

Wenn sie läuft, laden Sie sie neu, um die Änderungen anzuwenden.

$ sudo ufw reload

Schritt 2 - Docker installieren

Cent OS/Rocky Linux/Alma Linux

Führen Sie den folgenden Befehl aus, um Docker zu installieren.

$ sudo yum install -y yum-utils
$ sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
$ sudo yum install docker-ce docker-ce-cli containerd.io

Ubuntu

$ sudo apt install ca-certificates curl gnupg lsb-release
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
$ echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
$ sudo apt update
$ sudo apt install docker-ce docker-ce-cli containerd.io

Debian

$ sudo apt install ca-certificates curl gnupg lsb-release
$ curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
$ echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
$ sudo apt update
$ sudo apt install docker-ce docker-ce-cli containerd.io

Aktivieren und starten Sie den Docker-Dienst.

$ sudo systemctl start docker --now

Fügen Sie Ihren Benutzernamen zur Docker-Gruppe hinzu.

$ sudo usermod -aG docker $USER

Melden Sie sich vom System ab und wieder an, um die Änderung anzuwenden.

Schritt 3 - Docker Compose installieren

Laden Sie die Docker-Compose-Binärdatei herunter und installieren Sie sie.

$ sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

Wenden Sie die Ausführungsberechtigung auf die Binärdatei an.

$ sudo chmod +x /usr/local/bin/docker-compose

Schritt 4 - Docker-Compose-Datei erstellen

Erstellen Sie ein Verzeichnis für den Nginx Proxy Manager.

$ mkdir ~/nginx-proxy

Wechseln Sie in das Verzeichnis.

$ cd ~/nginx-proxy

Erstellen Sie Verzeichnisse für Benutzerdaten und SSL-Zertifikate.

$ mkdir {data,letsencrypt}

Erstellen und öffnen Sie die docker-compose.yml-Datei zur Bearbeitung.

$ nano docker-compose.yml

Fügen Sie den folgenden Code ein.

version: "3"
services:
  npm-app:
    image: 'jc21/nginx-proxy-manager:latest'
    container_name: npm-app
    restart: unless-stopped
    ports:
      - '80:80' # Öffentlicher HTTP-Port
      - '443:443' # Öffentlicher HTTPS-Port
      - '81:81' # Admin-Web-Port
      # Fügen Sie jeden anderen Stream-Port hinzu, den Sie freigeben möchten
      # - '21:21' # FTP
    environment:
      DB_MYSQL_HOST: "npm-db"
      DB_MYSQL_PORT: 3306
      DB_MYSQL_USER: "npm"
      DB_MYSQL_PASSWORD: "npm"
      DB_MYSQL_NAME: "npm"
      # Kommentieren Sie die folgende Zeile aus, wenn IPv6 auf Ihrem Host nicht aktiviert ist
      # DISABLE_IPV6: 'true'
    volumes:
      - ./data:/data
      - ./letsencrypt:/etc/letsencrypt
    depends_on:
      - npm-db
    networks:
      - npm-nw
      - npm-internal

  npm-db:
    image: 'mariadb:latest'
    container_name: npm-db
    restart: unless-stopped
    environment:
      MYSQL_ROOT_PASSWORD: 'npm'
      MYSQL_DATABASE: 'npm'
      MYSQL_USER: 'npm'
      MYSQL_PASSWORD: 'npm'
    volumes:
      - ./data/mysql:/var/lib/mysql
    networks:
      - npm-internal

networks:
  npm-internal:
  npm-nw:
    external: true

Speichern Sie die Datei, indem Sie Strg + X drücken und bei Aufforderung Y eingeben.

Lassen Sie uns die Datei durchgehen. Der erste Teil der Datei ist, wo wir das Image des Nginx Proxy Managers importieren und einige Umgebungsvariablen in Form von Datenbankanmeldeinformationen festlegen. Wir exponieren auch die Ports 80, 81 und 443 für den Zugriff auf den Server. Sie können weitere Ports wie 21 für den FTP-Zugriff freigeben. Sie können die IPv6-Unterstützung deaktivieren, indem Sie die Zeile DISABLE_IPV6: 'true' auskommentieren. Wir haben mehrere Verzeichnisse von unserem Host zum Docker für Daten- und SQL-Speicher zugeordnet.

Wir verwenden hier zwei Netzwerke. Eines ist das interne Netzwerk npm-internal, um den Proxy-Manager und die Datenbank zu verbinden. Dieses ist optional, da es automatisch erstellt wird. Aber hier machen wir es manuell, indem wir ihm einen Namen unserer Wahl geben.

Wir haben ein externes Netzwerk zum Proxy-Manager-Container namens npm-nw hinzugefügt. Dieses Netzwerk ist wichtig, da Sie es verwenden können, um den Proxy-Manager mit anderen Docker-Containern zu verbinden, die Sie installieren. Die Verwendung eines Netzwerks ermöglicht es Ihnen, jeden Container direkt zu verbinden, ohne die Ports für den Server freigeben zu müssen.

Schritt 5 - Nginx Proxy Manager ausführen

Bevor wir den Docker-Container starten, müssen wir das externe Netzwerk npm-nw erstellen. Interne Netzwerke werden automatisch erstellt. Führen Sie den folgenden Befehl aus, um das externe Netzwerk zu erstellen.

$ docker network create npm-nw

Starten Sie den Docker-Container mit dem folgenden Befehl.

$ docker-compose up -d

Überprüfen Sie den Status der Container.

$ docker ps
CONTAINER ID   IMAGE                             COMMAND                  CREATED              STATUS              PORTS                                                                                  NAMES
c91ca0ddca97   jc21/nginx-proxy-manager:latest   "/init"                  Vor etwa einer Minute   Hoch Vor etwa einer Minute   0.0.0.0:80-81->80-81/tcp, :::80-81->80-81/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp   npm-app
1738d71b95da   mariadb:latest                    "docker-entrypoint.s…"   Vor etwa einer Minute   Hoch Vor etwa einer Minute   3306/tcp                                                                               npm-db

Schritt 6 - Auf Nginx Proxy Manager zugreifen

Sie können jetzt auf Ihren Nginx Proxy Manager über die URL http://yourserverIP:81 zugreifen. Sie sollten den folgenden Anmeldebildschirm erhalten.

Nginx Proxy Manager Anmeldebildschirm

Geben Sie die folgenden Standardanmeldeinformationen ein, um sich anzumelden.

E-Mail-Adresse: [email protected] Passwort: changeme

Als nächstes werden Sie sofort aufgefordert, einen Namen und eine E-Mail-Adresse festzulegen.

Nginx Proxy Manager Benutzer bearbeiten Popup

Klicken Sie auf die Schaltfläche Speichern, und Sie werden aufgefordert, ein neues Passwort festzulegen.

Nginx Proxy Manager Passwort festlegen Popup

Klicken Sie erneut auf die Schaltfläche Speichern, und Sie können jetzt mit der Anwendung beginnen.

Nginx Proxy Manager Dashboard

Wenn Sie die URL http://yourserverIP in Ihrem Browser öffnen, werden Sie zu einer Standardseite weitergeleitet, die der Proxy-Manager festgelegt hat.

Nginx Proxy Manager Standardseite

Schritt 7 - Domainnamen und SSL für Nginx Proxy Manager einrichten

Lassen Sie uns einen Domainnamen für den Zugriff auf den Nginx Proxy Manager festlegen. Dieser Schritt ist optional, aber nützlich, wenn Sie die Anwendung hinter SSL stellen möchten.

Klicken Sie im Dashboard-Menü auf Hosts >> Proxy Hosts, um die Proxy Hosts-Seite zu öffnen. Klicken Sie von dort auf die Schaltfläche Proxy-Host hinzufügen, um fortzufahren.

Nginx Proxy Manager Neuer Proxy-Host Bildschirm

Fügen Sie den FQDN-Namen ( npm.example.com) hinzu und klicken Sie darauf. Geben Sie die IP-Adresse Ihres Servers und 81 als Weiterleitungsport ein.

Wechseln Sie zur SSL-Registerkarte.

Nginx Proxy Manager SSL konfigurieren

Wählen Sie Ein neues SSL-Zertifikat anfordern aus dem Dropdown-Menü. Wählen Sie die Optionen SSL erzwingen und HTTP/2-Unterstützung aus. Wenn Sie HSTS aktivieren möchten, können Sie dies ebenfalls aktivieren. Wenn Sie Ihre Domain über Cloudflare konfiguriert haben, aktivieren Sie nicht die Option SSL erzwingen, da Sie sonst in einer Umleitungsschleife stecken bleiben.

Geben Sie Ihre E-Mail-Adresse ein, stimmen Sie den Nutzungsbedingungen (TOS) von Let’s Encrypt zu und klicken Sie auf die Schaltfläche Speichern, um den Vorgang abzuschließen.

Nginx Proxy Manager Proxy-Host-Liste

Ihre Domain sollte live und funktionsfähig sein. Versuchen Sie, https://npm.example.com in Ihrem Browser zu öffnen, und Sie sollten den Anmeldebildschirm des Nginx Proxy Managers erhalten.

Sie können dies auch für die Standard-Startseite tun und sie einem Domainnamen wie https://example.com zuweisen. Ändern Sie einfach den Port von 81 auf 81, während Sie den Proxy-Host einrichten.

Schritt 8 - Nginx Proxy Manager mit einer anderen Docker-Webanwendung verwenden

Jetzt, da wir den Proxy-Manager installiert haben, ist es an der Zeit, ihn zu nutzen. Das erste, was wir tun werden, ist, ihn zu verwenden, um eine andere Docker-Webanwendung zu hosten. Dazu werden wir den Ghost-Blog installieren. Wenn Sie mehr erfahren möchten, lesen Sie unser Tutorial zur Installation von Ghost mit Docker auf einem Ubuntu-Server.

Erstellen Sie ein weiteres Verzeichnis für Ihren Ghost-Blog.

$ mkdir ~/ghost

Wechseln Sie in das Ghost-Verzeichnis.

$ cd ~/ghost

Erstellen Sie zwei Verzeichnisse für den Inhalt und die Datenbank.

$ mkdir {content,mysql}

Selbst wenn Sie dasselbe MySQL-Image verwenden, sollten Sie die Daten und deren Container vom Proxy-Manager trennen. Dies hilft, Probleme zu isolieren, auf die Sie stoßen könnten, und ermöglicht es Ihnen, Dinge zu verschieben, falls erforderlich.

Erstellen und öffnen Sie die Docker-Compose-Datei zur Bearbeitung.

$ nano docker-compose.yml

Fügen Sie den folgenden Code ein. Ersetzen Sie example.com durch Ihren tatsächlichen Domainnamen für Ihren Ghost-Blog. Geben Sie SMTP-Details ein, wenn Sie E-Mails empfangen möchten. Sie können sie entfernen, wenn Sie sie nicht benötigen.

version: '3.3'
services:

  ghost-app:
    image: ghost:latest
    container_name: ghost-app
    restart: always
    depends_on:
      - ghost-db
    environment:
      url: https://ghost.example.com
      database__client: mysql
      database__connection__host: ghost-db
      database__connection__user: ghost
      database__connection__password: ghostdbpass
      database__connection__database: ghostdb
      mail__transport: SMTP
      mail__options__host: {Ihr Mail-Service-Host}
      mail__options__port: {Ihr Mail-Service-Port}
      mail__options__secureConnection: {true/false}
      mail__options__service: {Ihr Mail-Service}
      mail__options__auth__user: {Ihr Benutzername}
      mail__options__auth__pass: {Ihr Passwort}
    volumes:
      - /home//ghost/content:/var/lib/ghost/content
    networks:
      - npm-nw
      - ghost-network

  ghost-db:
    image: mariadb:latest
    container_name: ghost-db
    restart: always
    environment:
      MYSQL_ROOT_PASSWORD: your_mysql_root_password
      MYSQL_USER: ghost
      MYSQL_PASSWORD: ghostdbpass
      MYSQL_DATABASE: ghostdb
    volumes:
      - /home//ghost/mysql:/var/lib/mysql
    networks:
      - ghost-network

networks:
  ghost-network:
  npm-nw: 
    external: true

Speichern Sie die Datei, indem Sie Strg + X drücken und bei Aufforderung Y eingeben.

Wie Sie sehen können, haben wir den Ghost-Container mit dem Nginx Proxy Manager über das externe Netzwerk npm-nw verbunden. Auf diese Weise exponieren wir die Ports von Ghost nicht zum System. Wir haben auch ein internes Netzwerk ghost-network verwendet, um unsere Ghost-App und den entsprechenden Datenbankcontainer zu verbinden.

Starten Sie den Container.

$ docker-compose up -d

Ghost im Nginx Proxy Manager konfigurieren

Jetzt müssen wir den Reverse-Proxy für unsere Ghost-Installation einrichten. Öffnen Sie den Nginx Proxy Manager in Ihrem Browser, gehen Sie zu Dashboard >> Hosts >> Proxy Host und fügen Sie einen neuen Proxy-Host hinzu.

Ghost Blog Nginx Proxy Manager konfigurieren

Fügen Sie den Domainnamen hinzu, den Sie für Ihren Ghost-Blog gewählt haben. Geben Sie für den Wert Hostname/IP den Namen Ihres Containers ein. In diesem Fall wäre es ghost-app. Wir können hier die IP-Adresse nicht hinzufügen, da wir den Port von Ghost nicht zum Server exponiert haben, und der Nginx-Proxy Ghost über die IP nicht erreichen kann. Daher verwenden wir den Containernamen, auf den NPM über das Docker-Netzwerk npm-nw, das wir erstellt haben, zugreifen kann. Verwenden Sie 2368 als Port, den Standardport, der vom Ghost-Blog verwendet wird. Überprüfen Sie die anderen Optionen, wie im obigen Screenshot gezeigt.

Wechseln Sie als Nächstes zur SSL-Registerkarte und erstellen Sie ein neues SSL-Zertifikat gemäß Schritt 6. Da Sie Inhalte auf Ihren Ghost-Blog hochladen werden, wäre es gut, eine maximale Upload-Größe für Ihre Uploads festzulegen.

Glücklicherweise ermöglicht es NPM, benutzerdefinierte Konfigurationen hinzuzufügen. Wechseln Sie zur Erweitert-Registerkarte und geben Sie client_max_body_size 50m; in das Feld ein.

Ghost Blog NPM erweiterte Konfiguration

Klicken Sie auf die Schaltfläche Speichern, um das Hinzufügen des Proxy-Hosts abzuschließen. Sie sollten in der Lage sein, auf Ihren Ghost-Blog über die URL https://ghost.exampl.com zuzugreifen.

Ghost Blog Startseite

Schritt 9 - Nginx Proxy Manager als Weiterleitungsdienst verwenden

Lassen Sie uns sehen, wie Sie NPM verwenden können, um eine Domain einfach auf eine andere weiterzuleiten. Besuchen Sie dazu Dashboard >> Hosts >> Weiterleitungs-Hosts. Klicken Sie von dort auf die Schaltfläche Weiterleitungs-Host hinzufügen, um zu beginnen.

Nginx Proxy Manager Weiterleitungs-Host

Geben Sie den Domainnamen ein, den Sie weiterleiten möchten. Und geben Sie die weitergeleitete Domain ein. Die weitergeleitete Domain sollte bereits konfiguriert sein. Lassen Sie das Schema auf Auto. Je nach Bedarf können Sie http oder https auswählen. Wählen Sie den richtigen HTTP-Code und aktivieren Sie die Optionen Pfad beibehalten und Häufige Angriffe blockieren. Wenn Sie ein Auto- oder https-Schema verwenden, stellen Sie sicher, dass Sie ein SSL-Zertifikat mit NPM ausgewählt oder erstellt haben. Klicken Sie auf Speichern, um das Hinzufügen Ihres Weiterleitungs-Hosts abzuschließen.

Ihre Domain example.com sollte jetzt auf blog.example.com weitergeleitet werden.

Weitere Verwendungen des Nginx Proxy Managers

Es gibt zwei weitere Möglichkeiten, wie Sie den Nginx Proxy Manager verwenden können. Sie können ihn als 404-Host verwenden, was bedeutet, dass Sie eine Domain als Zielseite verwenden können, um den Suchmaschinen zu zeigen, dass die Seiten der Domain nicht existieren. Der Schritt umfasst nur das Eingeben einer Domain und das Einrichten von SSL dafür. Sie können dies auch als Gelegenheit nutzen, um die Protokolle für den Domainnamen zu verfolgen und den Verweisverkehr anzuzeigen.

Die andere Funktion besteht darin, NPM als Stream-Host zu verwenden. Sie können diese Funktion verwenden, um TCP/UDP-Ports an einen anderen Computer im Netzwerk weiterzuleiten. Dies ist nützlich, wenn Sie Spieleserver hosten. Das Einzige, was erforderlich ist, ist, dass Sie den eingehenden Port, die weitergeleitete Domain oder IP-Adresse, den weitergeleiteten Port und den Typ des Ports eingeben.

Nginx Proxy Manager Neues Stream-Host-Popup

Nginx Proxy Manager verwenden, um eine statische Website zu hosten

Der Nginx Proxy Manager kann auch einfache statische oder dynamische Websites hosten. Um dies zu tun, fügen Sie einen neuen Proxy-Host hinzu und wählen Sie 127.0.0.1 als Weiterleitungsdomain und 80 als Port.

Nginx Proxy Manager Statische Website-Host

Geben Sie unter der Registerkarte Erweitert die Konfiguration an, die das Stammverzeichnis angibt. Stellen Sie sicher, dass das Stammverzeichnis für die Website in der ursprünglichen Docker-Compose-Konfiguration gemountet ist. Hier verwenden wir das Verzeichnis /data/static, um unsere statische Website zu hosten.

Nginx Proxy Manager Statische Seite Erweiterte Konfiguration

Klicken Sie auf Speichern, um den Vorgang abzuschließen, und Ihre Website sollte zugänglich sein. Sie können auf ähnliche Weise jede Art von Website mit dem Proxy-Manager hosten.

Statische Seite Demo

Schritt 10 - Verschiedene Funktionen

Verwenden Sie die Zugriffskontrollfunktion des Nginx Proxy Managers

Sie können die Zugrifflistenfunktion von NPM verwenden, um die HTTP-Authentifizierung zu aktivieren oder IP-Bereiche zu blockieren. Öffnen Sie NPM und besuchen Sie die Seite Dashboard >> Zugrifflisten.

Klicken Sie auf die Schaltfläche Zugriffsliste hinzufügen, um zu beginnen.

Nginx Proxy Manager Neue Zugriffsliste

Sie können Ihre Zugriffsliste (ACL)-Konfiguration benennen. Die Registerkarte Satisfy Any, wenn aktiviert, erlaubt den Zugriff, wenn der Client eine der angegebenen Bedingungen erfüllt. Wenn ein Client die HTTP-Authentifizierung besteht, aber möglicherweise den IP-basierten Zugriff nicht besteht, wird er erlaubt. Wenn die Option Satisfy Any jedoch deaktiviert ist, muss der Client alle Bedingungen erfüllen.

Die Funktion Pass Auth to Host leitet die Authentifizierungsfunktion an den Host-Server weiter.

Wechseln Sie als Nächstes zur Registerkarte Autorisierung. Hier können Sie einen Benutzernamen und ein Passwort für die HTTP-Authentifizierungsmethode erstellen. Um mehr als einen Benutzer hinzuzufügen, klicken Sie auf die Schaltfläche Hinzufügen. Sie können nur bis zu 5 Benutzer hinzufügen. Und es gibt einen Fehler mit der Schaltfläche Hinzufügen, also verwenden Sie zuerst die Schaltfläche und füllen Sie dann die Details aus. Wenn Sie die Details ausfüllen und später auf die Schaltfläche klicken, um einen weiteren Benutzer hinzuzufügen, werden die vorherigen Benutzerdaten gelöscht.

Nginx Proxy Manager Autorisierungseinstellungen

Wechseln Sie zur Registerkarte Zugriff. Hier können Sie festlegen, welche IP-Adressen Zugriff gewährt oder verweigert werden.

Nginx Proxy Manager IP-Zugriffs-Registerkarte

Klicken Sie auf Speichern, um den Vorgang abzuschließen.

Um diese Zugriffsliste zu verwenden, müssen Sie sie beim Hinzufügen Ihres Proxy-Hosts auswählen. Wie im Beispiel für den Ghost-Blog unten haben wir unsere Zugriffsliste ausgewählt.

Nginx Proxy Manager Proxy-Zugriffsliste unterstützen

Unterstützung für mehr Domainnamen aktivieren

Da die Anzahl der Hosts und Domains wächst, kann Ihr Nginx möglicherweise den Hash-Speicherplatz erschöpfen oder auf Speicherprobleme stoßen. Wir können eine benutzerdefinierte Konfiguration hinzufügen, die für alle Hosts gilt, um dieses Problem zu lösen.

Um dies zu tun, erstellen Sie das Verzeichnis custom innerhalb von ~/nginx-proxy/data/nginx.

$ sudo mkdir ~/nginx-proxy/data/nginx/custom

Erstellen und öffnen Sie die Datei http.conf in diesem Verzeichnis.

$ sudo nano ~/nginx-proxy/data/nginx/custom/http.conf

Fügen Sie die folgenden Zeilen ein.

proxy_headers_hash_max_size 1024;
proxy_headers_hash_bucket_size 128;

Speichern Sie die Datei, indem Sie Strg + X drücken und bei Aufforderung Y eingeben.

Nginx sollte diese Werte automatisch akzeptieren. Wenn dies nicht der Fall ist, können Sie den NPM-Container mit dem folgenden Befehl neu starten.

$ docker restart npm-app

Standard-Startseite umleiten

In Schritt 6 sehen Sie die Standardseite, wenn Sie die URL http:// eingeben. Wenn Sie das ändern möchten, ist das möglich. Besuchen Sie dazu die Einstellungsseite. Klicken Sie auf die drei Punkte auf der rechten Seite und klicken Sie auf die Schaltfläche Bearbeiten.

Nginx Proxy Manager Startseite bearbeiten

Sie können die Startseite so einstellen, dass sie als 404-Seite, Weiterleitungsseite oder benutzerdefiniertes HTML verwendet wird, indem Sie die Option Benutzerdefinierte Seite verwenden. Wenn Sie Weiterleitung auswählen, müssen Sie die Ziel-URL angeben.

Nginx Proxy Manager Standardseiten-Einstellungen

Dies ist das benutzerdefinierte HTML, das wir für unseren Zweck verwendet haben.



  
    Nichts hier
    
    
    
    
  
  
    

Ups!

Entschuldigung für die Unannehmlichkeiten, aber Sie sollten hier nicht sein. Hier bekommen Sie nichts. Diese Seite wurde für die HowtoForge Nginx Proxy Manager-Anleitung eingerichtet. Vielleicht wird sie eines Tages etwas anzeigen.

Klicken Sie auf Speichern, um den Vorgang abzuschließen. Ihre Startseite sollte in etwa so geändert werden.

Nginx Proxy Manager Benutzerdefinierte Startseite

Schritt 11 - Nginx Proxy Manager aktualisieren

Um NPM zu aktualisieren, stoppen Sie zuerst die Container.

$ cd ~/nginx-proxy
$ docker-compose down --remove-orphans

Holen Sie sich die neuesten Images.

$ docker-compose pull

Starten Sie die Container erneut.

$ docker-compose up -d

Fazit

Damit endet unser Tutorial, in dem Sie den Nginx Proxy Manager installiert und gelernt haben, wie Sie ihn verwenden, um einen Proxy-Host für einen anderen Docker-Container hinzuzufügen, ihn als Weiterleitungsdienst zu nutzen und den Zugriff zu steuern. Wenn Sie Fragen haben, posten Sie diese bitte in die Kommentare unten.

Share: X/Twitter LinkedIn

Erhalte neue Beiträge in deinem Posteingang.

Kein Spam. Jederzeit abmelden.