↼ My Two Cents

Cover image for How to Install Nginx Proxy Manager on Synology NAS (DSM 7.2+)

How to Install Nginx Proxy Manager on Synology NAS (DSM 7.2+)

Nginx Proxy Manager (NPM) is a free, open-source reverse proxy tool with a powerful web interface. It lets you expose your self-hosted services to the internet with free automatic SSL certificates — without needing to know Nginx configuration syntax.

In this guide, I’ll walk you through installing Nginx Proxy Manager on your Synology NAS using Docker.


🧰 What You’ll Need

  • A Synology NAS running DSM 7.2+ (or Docker for older DSM versions)
  • Container Manager installed (from Package Center)
  • SSH access to your NAS
  • A domain pointed to your home IP (via Cloudflare or similar)

⚠️ Important: Nginx Proxy Manager requires ports 80 and 443. If you have Web Station or DSM’s built-in web services using these ports, uninstall them first.


⚙️ Step 1: Install Container Manager

  1. Open Package Center on your Synology NAS
  2. Search for Container Manager (or Docker for DSM versions below 7.2)
  3. Install the package and wait for it to complete

⚙️ Step 2: Create Folder Structure

  1. Open File Station
  2. Navigate to /volume1/docker/
  3. Create a new folder named npm (lowercase)
  4. Inside the npm folder, create two subfolders:
    • data
    • letsencrypt

Your structure should look like:

/volume1/docker/npm/
├── data/
├── letsencrypt/

⚙️ Step 3: Create the Docker Container

We’ll use Synology’s Task Scheduler to run the Docker container.

  1. Go to Control PanelTask Scheduler
  2. Click CreateScheduled TaskUser-defined script
  3. Configure the task:

General Settings

Setting Value
Task Name Install NPM
Enabled Unchecked
User root

Schedule

Setting Value
Run on the following date Do not repeat

Task Settings

In the Run command area, paste this Docker command:

docker run -d \
  --name=nginx_proxy_manager \
  -p 8341:80 \
  -p 81:81 \
  -p 8766:443 \
  -e TZ=Asia/Singapore \
  -v /volume1/docker/npm/data:/data \
  -v /volume1/docker/npm/letsencrypt:/etc/letsencrypt \
  --restart always \
  jc21/nginx-proxy-manager

💡 Replace Asia/Singapore with your actual timezone. Find your timezone here. Note: The container automatically creates the SQLite database in /data — no config.json needed.

  1. Click OK
  2. Enter your DSM password when prompted
  3. Select the task and click Run

⚙️ Step 4: Access Nginx Proxy Manager

  1. Open your browser
  2. Navigate to: http://YOUR_NAS_IP:81
  3. Log in with the default credentials:
Setting Value
Email admin@example.com
Password changeme

⚙️ Step 5: Change Default Credentials

Upon first login, you’ll be prompted to:

  1. Update your full name, nickname, and email
  2. Change your password from changeme to something secure

⚙️ Step 6: Configure Port Forwarding

To access your proxied services from the internet, forward these ports in your router:

Port Service
80 HTTP
443 HTTPS
81 NPM Admin (optional)
8341 HTTP Alternate
8766 HTTPS Alternate

⚠️ If ports 80/443 are already in use by another service, use the alternate ports (8341/8766) and configure port forwarding accordingly.


🔐 How to Create a Proxy Host

Now that NPM is running, here’s how to expose a service:

  1. In NPM admin panel, go to HostsProxy Hosts
  2. Click Add Proxy Host
  3. Fill in the details:
Field Value
Domain Names yourdomain.com
Scheme http
Forward Hostname / IP container_ip
Forward Port container_port
Cache Assets Optional
Block Common Exploits Recommended
  1. Enable SSL tab:
    • Request a new SSL certificate
    • Force SSL
    • HTTP/2 Support

✅ Wrap Up

Nginx Proxy Manager is now running on your Synology NAS. You can now:

  • Expose multiple services through a single domain
  • Get free automatic SSL certificates via Let’s Encrypt
  • Password-protect your services
  • Block common exploits

For more advanced configurations, check the official Nginx Proxy Manager documentation.

If this guide helped you set up NPM, consider buying me a coffee:

👉 https://ko-fi.com/alwynsoh

Every tip helps me keep testing, writing, and sharing guides like this. Appreciate the support!


← Tailscale vs Cloudflare …
How to Set Up IMAP in Outlook … →