Files
docker-compose-cookbooks/nginx-proxy-manager
codeandClaude Sonnet 5 310d5e8456 Rename nginx-proxy-manager_notes to nginx-proxy-manager, add docker run equivalent and log volume
Adds a docker run command equivalent to the compose file, splits container
logs out to a separate LOG_PATH volume (they shouldn't be backed up with
the rest of the data), and cleans up README wording.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-08-22 14:19:59 +00:00
..

Nginx Proxy Manager

Remember, if dockhand is using a domain name, this will have to be set up first.

I run one instance of Nginx Proxy Manager (NPM) on each host.

Overview

This Docker Compose configuration sets up the Reverse Proxy application using Docker container.

Default Login

Create Network

The first thing you want to do is create the network:

docker network create proxy

Expose Ports

80 and 443 must be exposed, but you could proxy to 81 for the admin interface.

Create volumes

Assuming default sample.env is used:

mkdir -p /data/nginx-proxy-manager/data /data/nginx-proxy-manager/letsencrypt /var/log/containers/nginx-proxy-manager

Logs

Nginx Proxy Manager writes access/error logs under /data/logs, which is mounted outside of VOL_PATH. Since logs shouldn't be backed up with the rest of the data, they're mounted separately via LOG_PATH, which defaults to /var/log/containers/nginx-proxy-manager/. If you'd rather back up/sync logs with the rest of the data, just remove the logs volume.

mkdir -p /var/log/containers/nginx-proxy-manager

Equivalent docker run command

mkdir -p /data/nginx-proxy-manager/data /data/nginx-proxy-manager/letsencrypt /var/log/containers/nginx-proxy-manager

docker network create proxy

docker run -d \
  --name proxy \
  --restart unless-stopped \
  --network proxy \
  -e X_FRAME_OPTIONS="sameorigin" \
  -e DB_SQLITE_FILE="/data/database.sqlite" \
  -p 80:80 \
  -p 81:81 \
  -p 443:443 \
  -v "/data/nginx-proxy-manager/data:/data" \
  -v "/data/nginx-proxy-manager/letsencrypt:/etc/letsencrypt" \
  -v "/var/log/containers/nginx-proxy-manager:/data/logs" \
  jc21/nginx-proxy-manager:2.15.1