Nginx Proxy Manager: één portier voor al je diensten
Heb je meerdere diensten op je server draaien — Nextcloud, Vaultwarden, Jellyfin — dan heb je al snel een chaos van poortnummers en losse adressen. Nginx Proxy Manager is de portier die al dat verkeer netjes naar het juiste deurtje stuurt, met één simpel, herkenbaar adres per dienst.
Wat is Nginx Proxy Manager nou eigenlijk, in gewone taal?
Normaal bereik je elke dienst op je server via een eigen "poortnummer" — bijvoorbeeld http://192.168.1.50:8096 voor Jellyfin en http://192.168.1.50:8080 voor iets anders. Onthouden welk nummer bij welke dienst hoort is onhandig, en die adressen tonen ook nog eens geen slotje (HTTPS) in je browser.
Nginx Proxy Manager (kortweg NPM) is een soort receptioniste die vóór al je andere diensten staat. Jij geeft elke dienst een herkenbare naam, bijvoorbeeld films.mijnhuis.nl voor Jellyfin, en de receptioniste stuurt bezoekers die daarnaartoe gaan automatisch door naar het juiste poortnummer erachter — inclusief een geldig, gratis beveiligingscertificaat (dat groene slotje in je browser), volledig automatisch geregeld via Let's Encrypt.
Dit is precies de dienst die andere diensten op deze pagina nodig hebben om ook buiten je huis veilig bereikbaar te zijn — zoals we bij Vaultwarden al even aanstipten.
Wat heb je nodig?
- vereistDocker geïnstalleerd op je server
- let opWil je diensten ook van buiten je huis bereikbaar maken? Dan heb je een eigen domeinnaam nodig, en moet je poort 80 en 443 op je router doorverwijzen naar je server
Handmatig installeren, stap voor stap
-
Zorg dat Docker draait
Nginx Proxy Manager draait als Docker-container. Staat Docker nog niet op je server, installeer het dan eerst.
-
Maak een instellingenbestand aan
Maak een bestand genaamd docker-compose.yml aan met de volgende inhoud — dit vertelt Docker precies hoe de container gebouwd moet worden:
services:app:image: 'jc21/nginx-proxy-manager:latest'restart: unless-stoppedports:- '80:80'- '443:443'- '81:81'volumes:- ./data:/data- ./letsencrypt:/etc/letsencrypt -
Start de container
$ docker compose up -d -
Open het beheerscherm
Ga naar http://<ip-adres-van-je-server>:81. Log in met het standaard e-mailadres admin@example.com en wachtwoord changeme, en wijzig dit meteen bij de eerste keer inloggen.
De snelle weg: installeren met een community-script
Draai je Proxmox? Dan bouwt een gratis community-script — gemaakt door vrijwilligers en gebruikt door duizenden zelfhosters — in een paar minuten een eigen, afgeschermd hokje ("container") met Nginx Proxy Manager er al kant-en-klaar in, zonder dat je zelf een instellingenbestand hoeft te schrijven.
Bekijk bij twijfel altijd eerst wat een script doet — dat kan gratis op GitHub. De grote, actieve gemeenschap achter deze scripts maakt ze relatief betrouwbaar, maar blijf kritisch: het draait met volledige rechten op je systeem.
Hoe gebruik je het?
In het beheerscherm maak je per dienst een nieuwe "Proxy Host" aan: je vult de naam in die je wilt gebruiken (bijvoorbeeld films.mijnhuis.nl) en het interne adres met poortnummer van de dienst erachter (bijvoorbeeld 192.168.1.50:8096 voor Jellyfin). Met één vinkje regelt Nginx Proxy Manager er automatisch een gratis, geldig beveiligingscertificaat bij via Let's Encrypt.
Wijzig altijd meteen het standaardwachtwoord na installatie — dit programma staat straks aan de voordeur van al je andere diensten. Gebruik voor elke dienst een aparte, herkenbare naam, zodat je nooit meer een poortnummer hoeft te onthouden.
Bronnen
- Officiële documentatienginxproxymanager.com
- Community-script (Proxmox VE Helper-Scripts)community-scripts.github.io