Skip to content

Nginx Proxy Manager

A Docker-based web admin panel for setting up Nginx reverse proxies with free SSL certificates.

Stars
34.6k
Forks
4k
Licence
MIT
Language
TypeScript
Last update
5 days ago
Type
App

What it is

Nginx Proxy Manager is a web interface that runs in a Docker container and lets you forward web addresses to services you host, such as apps on a home server. It can request free Let's Encrypt SSL certificates so traffic is encrypted, and it aims to work without deep knowledge of Nginx configuration files. The README says the goal is to keep the basic setup simple, with advanced options available but optional.

  • Forward a domain name like app.example.com to a service running on a home server
  • Obtain and renew free Let's Encrypt SSL certificates for your hosted sites
  • Set up access lists and basic HTTP authentication to restrict who can reach a host
  • Create redirections, streams, or 404 hosts without writing Nginx config by hand

Great for

  • People self-hosting web services at home who want friendly domain names and HTTPS
  • Users who want to manage reverse proxy hosts through a browser instead of editing config files
  • Anyone already comfortable running Docker Compose
  • Small teams or hobbyists hosting a few internal web apps

Not ideal for

  • Large production deployments needing high-availability or enterprise traffic management, since the README focuses on simple home and small setups
  • People who want full manual control over Nginx config files and prefer not to use a GUI
  • Users who cannot run Docker or need a non-container install, as the README only documents the Docker image
  • Users on armv7 hardware running version 2.14 or later, because armv7 support was dropped there
Step-by-step guide: how to use Nginx Proxy ManagerInstall, first run, examples, tips and FAQs

How to get it

  1. 1

    Install with a package manager

    You'll need: Docker · Docker Compose

    Start the stack using the docker-compose.yml file

    docker compose up -d
  2. 2

    Run it

    • Install Docker from the linked Docker documentation
    • Create a docker-compose.yml file with the sample configuration from the README
    • Run docker compose up -d in that folder
    • Open http://127.0.0.1:81 in a browser and log in to the admin UI
  3. 3

    Get the most out of it

    • Forward ports 80 and 443 on your router if you want the proxy reachable from outside your home network
    • Use a dynamic DNS service such as DuckDNS, Route53, or Cloudflare if your home IP changes
    • Use access lists and basic HTTP authentication to protect hosts
    • Read the full setup documentation at nginxproxymanager.com/setup for advanced options
    • Use advanced Nginx configuration only if you are comfortable with it, since it is aimed at super users

Downloads

Strengths

  • Browser-based admin interface that avoids hand-editing Nginx configuration
  • Built-in free SSL through Let's Encrypt, or you can supply your own certificates
  • Installs with a short Docker Compose file and is MIT licensed

Trade-offs

  • Depends on Docker and on your router and DNS being set up correctly for outside access, which the README covers only briefly
  • README does not describe scaling, backup procedures, or security hardening in detail
  • The README says the admin interface can take a while to come up due to key generation

How it compares

ProjectStarsTypeLevelUpdatedBest for
nginx-proxy-manager (this)34.6kAppbeginner5 days agoPeople self-hosting web services at home who want friendly domain names and HTTPS
traefik65.4kAppintermediate4 days agoTeams running many microservices in Docker, Swarm, or Kubernetes
swag13kDev toolintermediate1 months agoGo developers who already have a REST API using Gin, Echo, net/http, Fiber, or another listed framework
nginx-admins-handbook14.3kLearning resourcebeginner2.0 years agoSystem administrators who already run NGINX and want practical tips
nginxconfig.io28.3kAppbeginner1.9 years agoPeople setting up an NGINX server for a website or app who want a starting config
goaccess21.1kAppintermediate9 days agoSystem administrators who want quick traffic stats over SSH

Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.