server:docker:andreas_homelab:nginx-proxy-manager
Inhaltsverzeichnis
Nginx Proxy Manager
Was ist das
Nginx Proxy Manager ist ein Docker-basierter Reverse Proxy Manager, der eine einfache und benutzerfreundliche Weboberfläche bietet, um Nginx Proxy Hosts zu verwalten. Er ermöglicht die unkomplizierte Verwaltung von Proxy-Hosts, Weiterleitungen und SSL-Zertifikaten, inklusive automatischer Lets Encrypt-Zertifikatsverwaltung. Dies macht es besonders geeignet für den Einsatz in Heimnetzwerken und kleinen bis mittleren Umgebungen, um Webdienste sicher und einfach erreichbar zu machen.
Beispiel bei Andreas
- docker-compose.yml
services: npm: image: docker.io/jc21/nginx-proxy-manager:2.13.5 labels: - wud.tag.include=\d+\.\d+\.\d+$ # For What's Up Docker monitoring container_name: npm hostname: npm restart: unless-stopped healthcheck: test: 'curl -f http://localhost:81/api/schema || exit 1' interval: 60s timeout: 5s retries: 3 start_period: 90s networks: - default # Use the main network volumes: - npm_data:/data # Named volume for persistence - npm_letsencrypt:/etc/letsencrypt # SSL certificates storage environment: INITIAL_ADMIN_EMAIL: ${ADMIN_EMAIL:-admin@example.com} INITIAL_ADMIN_PASSWORD: ${ADMIN_PASSWORD:-changeme} DISABLE_IPV6: ${NPM_DISABLE_IPV6:-true} # Disable IPv6 X_FRAME_OPTIONS: ${NPM_X_FRAME_OPTIONS:-sameorigin} # Security headers ports: - "${NPM_HTTP_PORT:-80}:80" # HTTP port - "${NPM_HTTPS_PORT:-443}:443" # HTTPS port - "${NPM_ADMIN_PORT:-81}:81" # Admin interface port volumes: npm_data: npm_letsencrypt:
Erklärungen
- image: Verwendetes Docker Image und dessen Version.
- labels: Metadaten/Labels zur Steuerung und Filterung, hier z.B. zum Einbinden in bestimmte Workflows oder Systeme.
- restart: Container wird automatisch neu gestartet, falls er abstürzt oder der Host neu startet.
- container_name: Vergebener Name für den Docker Container.
- hostname: Hostname innerhalb des Containers.
- ports: Portweiterleitungen vom Host zum Container.
- `80:80` leitet HTTP Traffic weiter.
- `443:443` leitet HTTPS Traffic weiter.
- `81:81` ist das Verwaltungsinterface von Nginx Proxy Manager.
- volumes: Persistente Speicherorte für Daten und Zertifikate.
- `npm_data` speichert Konfigurationsdaten.
- `letsencrypt` speichert Zertifikate für HTTPS.
Links zur aktuellen Dokumentation
server/docker/andreas_homelab/nginx-proxy-manager.txt · Zuletzt geändert: von neo
