Nginx Proxy Manager
Nginx Proxy Manager is a self-hosted reverse proxy and web server that lets you expose home or small-office applications to the internet without writing Nginx…
Platform availability
Available on 5 of 9 platforms
Health score?A 0-100 score computed nightly from four factors: maintained (40%: recent commits and steady activity), popular (25%: GitHub stars, log scale), easy to install (20%: platforms, install notes, setup guides, Docker image) and light to run (15%: minimum RAM, ARM support). When the source code has been checked, a fifth factor, security check (20%: automated scan for committed secrets, unsafe desktop-app settings, known-vulnerable dependencies and project hygiene; any serious finding caps it at 20), is added. Factors without data are left out and the rest are rescaled.
81/100 Excellent
- Maintained
- 100last commit 17 days ago
- Popular
- 9134,268 GitHub stars
- Easy to install
- 905 install platforms, install notes, setup guide, Docker image
- Light to run
- No data
- Security check
- 201 serious finding, CI, tests
Based on 4 of 5 factors.
Security check: 1 serious finding
- A private key is committed in the source code (backend/schema/paths/nginx/certificates/certID/upload/post.json:35)
Automated checks on commit d780474, 12 Oct 2026. Not an audit.
Availability: platform listings confirmed today
- GitHub stars
- 34,268
- Open issues
- 878
- Last commit
- 2026-09-26
- Latest release
- v2.16.0
- License
- MIT
- Activity
- rising
Checked 15 days ago - source: GitHub (NginxProxyManager/nginx-proxy-manager)
Resources & Compatibility
ARM (e.g. Raspberry Pi) is supported.
Checked 15 days ago - source: Docker Hub image tags and published docs
First-install notes
- Expose a host port to port 80 Add a port mapping like -p 8080:80, which makes a port on your machine (8080) forward to port 80 inside the container; without it, a browser on your machine cannot reach the web page. source
- Put template files in the mounted folder If you use template files, mount a local folder to /etc/nginx/templates and set environment variables (name=value settings passed to the container) for placeholders like ${MY_DOMAIN}; otherwise the rendered config may keep placeholders and stop working. source
- Let Nginx autotune worker count Set NGINX_ENTRYPOINT_WORKER_PROCESSES_AUTOTUNE=true if you want Nginx to calculate worker processes, the helper workers that handle requests, from the CPUs your container can use; without it, the default worker setting remains and may be too low or too high. source
- Port mapping for internet exposure Nginx Proxy Manager expects port 40080 for HTTP (unsecured) traffic and port 40443 for HTTPS (secured) traffic. To expose the proxy to the public internet, forward external port 80 to internal port 40080 and external port 443 to internal port 40443 on your router. source
Fetched 6 days ago - each note links to its source
Variants
Alternatives (7)
- BunkerWeb - BunkerWeb is a self-hosted, open-source web application firewall and NGINX-based web server that protects services with secure-by-default s…
- Fossorial Pangolin - Open-source identity-based remote access platform using WireGuard, offering unified management, tunneled connections, granular access contr…
- Haproxy - HAProxy is a TCP proxy and a HTTP reverse proxy.
- Træfik Proxy - The Cloud Native Application Proxy Simplify networking complexity while designing, deploying, and operating applications.
- nginx-ui
- npmplus - NPMplus is an improved fork of Nginx Proxy Manager that provides a web interface for managing reverse proxy rules, SSL certificates, and ap…
- zoraxy - Beyond Reverse Proxy: Your Ultimate Homelab Network Tool - Reverse Proxy - Redirection - Geo-IP & Blacklist - Global Area Network - Web SSH…
Checked 15 days ago - source: AlternativeTo
Common questions
Which Docker paths should I persist for Nginx Proxy Manager?
The quick-start compose file mounts ./data to /data and ./letsencrypt to /etc/letsencrypt. These are the paths used for NPM data and Let's Encrypt certificates.
What do I need to configure on my router and DNS to expose apps publicly?
Forward external ports 80 and 443 to the server running Nginx Proxy Manager. Point your domain name to your home server using a static IP or a DDNS service.
Do Let's Encrypt certificates renew automatically in Nginx Proxy Manager?
Yes, built-in Let's Encrypt support provides SSL for your web services, and the certificates renew themselves.
Can multiple users be limited to only their own proxy hosts?
Yes, you can configure users to view or manage their own hosts. Full access permissions are also available.
Can I override the generated Nginx configuration for advanced settings?
Yes, advanced Nginx configuration is available for super users.
Answers sourced from github.com, nginxproxymanager.com
Community
- Using Cloudflare Tunnel with Nginx Proxy Manager : r/selfhosted - Reddit (reddit)
- Setup Nginx Proxy manager step by step : r/selfhosted - Reddit (reddit)
- Need Help Finding Alternative For Nginx Proxy Manager - Reddit (reddit)
- nginx-proxy-manager abandoned? : r/selfhosted - Reddit (reddit)
- Any downsides to using NGINX Proxy Manager vs Native NGINX? - Reddit (reddit)
- Nginx Proxy Manager alternative : r/selfhosted - Reddit (reddit)
Collected 9 days ago - public community threads