Guide
NexProxy is a reverse proxy with a web interface. It forwards traffic to the services running on your network, terminates SSL for them, and takes care of certificates — without you having to write Nginx configuration by hand.
It ships as a single Docker image.
Features
- Proxy hosts, redirections, TCP/UDP streams and 404 hosts — created in the interface, no Nginx knowledge required
- Free SSL through Let's Encrypt (HTTP or DNS challenge) and support for your own certificates, with automatic renewal
- Access lists with HTTP authentication and IP rules
- Advanced Nginx configuration for those who want it
- User management, per-user permissions and an audit log
- Migration from Nginx Proxy Manager that carries over hosts, certificates, access lists and users
Two features belong to the Enterprise edition, which is free for private and non-commercial use:
- High availability — floating-IP failover across two nodes
- True multi-tenancy — hosts isolated per user
Hosting your home network
The basics for anyone new to self-hosting:
- Your home router has a port forwarding section somewhere. Log in and find it.
- Forward ports 80 and 443 to the machine running NexProxy.
- Point your domain at your connection — either a static IP, or a dynamic DNS service such as DuckDNS.
- Use NexProxy as the gateway that forwards to your other web services.
Quick Setup
- Install Docker and Docker Compose
- Create a
docker-compose.ymlfile similar to this:
yml
services:
app:
image: 'ghcr.io/bonderaustria/nexproxy:latest'
restart: unless-stopped
environment:
TZ: "Europe/Vienna"
ports:
- '80:80'
- '81:81'
- '443:443'
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencryptThis is the bare minimum configuration. See the setup documentation for more.
- Bring up your stack:
bash
docker compose up -d- Log in to the admin interface
Once the container is running, connect to it on port 81:
The first startup can take a minute depending on your hardware.
Contributing
Pull requests are welcome. CI runs on every pull request and must pass before a change is considered.