Deploy a powerful reverse proxy with a web UI and built-in Let's Encrypt SSL support on Ubuntu 22.04 or 24.04 — fully automated.
Grab the automated bash script from GitHub to follow along with the video.
The script automatically installs Docker if missing, generates secure DB credentials, creates the docker-compose.yml and starts everything.
wget https://raw.githubusercontent.com/mhmdali94/Docker/main/networking/npm/npm-ubuntu.sh
chmod +x npm-ubuntu.sh
sudo bash npm-ubuntu.sh
Open your browser and go to the NPM admin UI:
http://<your-server-ip>:81
| Field | Value |
|---|---|
| admin@example.com | |
| Password | changeme |
Go to Proxy Hosts → Add Proxy Host, fill in your domain name and forward it to your internal service. Enable SSL with Let's Encrypt in the SSL tab.
| Port | Purpose |
|---|---|
| 80 | HTTP traffic |
| 443 | HTTPS traffic |
| 81 | Admin Web UI |
/root/docker/npm/
├── docker-compose.yml
├── config.json
├── data/
└── letsencrypt/