Is there an existing issue for this?
Current Behavior
For my swag I have Auto-Reload set to true and have added the directory /config/nginx/proxy-confs to the SWAG_AUTORELOAD_WATCHLIST.
Then I docker exec bash into the swag container and modify a file in the directory:
/config/nginx -> reloads nginx
/config/nginx/proxy-confs -> does not reload the nginx
One thing to note is that we have a my.subdomain.conf file that is docker-bind-volume mapped to the directory /config/nginx/proxy-confs.
Expected Behavior
Nginx to reload when a subdomain.conf file is changed.
Steps To Reproduce
We are using docker compose and here is our docker configs:
services:
swag:
image: lscr.io/linuxserver/swag:latest
container_name: swag
cap_add:
- NET_ADMIN
networks:
- example_network
environment:
- PUID=1000
- PGID=1000
- TZ=Etc/UTC
- URL=example.app
- VALIDATION=http
- SUBDOMAINS=d1,d2,d3
- ONLY_SUBDOMAINS=true
- SWAG_AUTORELOAD=true
- SWAG_AUTORELOAD_WATCHLIST=/config/nginx/proxy-confs
volumes:
- ./volumes/swag/d1.subdomain.conf:/config/nginx/proxy-confs/d1.subdomain.conf
- ./volumes/swag/d2.subdomain.conf:/config/nginx/proxy-confs/d2.subdomain.conf
- ./volumes/swag/d3.subdomain.conf:/config/nginx/proxy-confs/d3.subdomain.conf
ports:
- 443:443
- 80:80 #optional
restart: unless-stopped
After everything is up and running, I do:
docker compose exec swag bash
cd /config/nginx
# modify a nginx.conf file, adding just a whitespace char
# notice that nginx configs are reloaded
cd /config/nginx/proxy-confs
# modify the file d1.subdomain.conf
# notice that nginx configs are not reloaded
Environment
- OS:Ubuntu 24.04.2 LTS
- How docker service was installed: via [official docker website instructions](https://docs.docker.com/engine/install/ubuntu/)
docker version: `Docker version 28.0.1, build 068a01e`
compose version: `Docker Compose version v2.33.1`
CPU architecture
x86-64
Docker creation
Container logs
`docker logs swag`
swag | [migrations] started
swag | [migrations] 01-nginx-site-confs-default: skipped
swag | [migrations] 02-swag-old-certbot-paths: skipped
swag | [migrations] done
swag | ───────────────────────────────────────
swag |
swag | ██╗ ███████╗██╗ ██████╗
swag | ██║ ██╔════╝██║██╔═══██╗
swag | ██║ ███████╗██║██║ ██║
swag | ██║ ╚════██║██║██║ ██║
swag | ███████╗███████║██║╚██████╔╝
swag | ╚══════╝╚══════╝╚═╝ ╚═════╝
swag |
swag | Brought to you by linuxserver.io
swag | ───────────────────────────────────────
swag |
swag | To support the app dev(s) visit:
swag | Certbot: https://supporters.eff.org/donate/support-work-on-certbot
swag |
swag | To support LSIO projects visit:
swag | https://www.linuxserver.io/donate/
swag |
swag | ───────────────────────────────────────
swag | GID/UID
swag | ───────────────────────────────────────
swag |
swag | User UID: 1000
swag | User GID: 1000
swag | ───────────────────────────────────────
swag | Linuxserver.io version: 3.3.0-ls371
swag | Build-date: 2025-03-17T13:53:41+00:00
swag | ───────────────────────────────────────
swag |
swag | using keys found in /config/keys
swag | Variables set:
swag | PUID=1000
swag | PGID=1000
swag | TZ=Etc/UTC
swag | URL=********************
swag | SUBDOMAINS=*****************
swag | EXTRA_DOMAINS=
swag | ONLY_SUBDOMAINS=true
swag | VALIDATION=http
swag | CERTPROVIDER=
swag | DNSPLUGIN=
swag | EMAIL=
swag | STAGING=
swag |
swag | Using Let's Encrypt as the cert provider
swag | SUBDOMAINS entered, processing
swag | Sub-domains processed are: ******************
swag | No e-mail address entered or address invalid
swag | http validation is selected
swag | Certificate exists; parameters unchanged; starting nginx
swag | The cert does not expire within the next day. Letting the cron script handle the renewal attempts overnight (2:08am).
swag | [custom-init] No custom files found, skipping...
swag | Auto-reload: Watching the following folders for changes to .conf files:
swag | /config/nginx
swag | /config/nginx/proxy-confs
swag | [ls.io-init] done.
swag | Server ready
Is there an existing issue for this?
Current Behavior
For my swag I have Auto-Reload set to true and have added the directory
/config/nginx/proxy-confsto theSWAG_AUTORELOAD_WATCHLIST.Then I
docker exec bashinto the swag container and modify a file in the directory:/config/nginx-> reloads nginx/config/nginx/proxy-confs-> does not reload the nginxOne thing to note is that we have a
my.subdomain.conffile that is docker-bind-volume mapped to the directory/config/nginx/proxy-confs.Expected Behavior
Nginx to reload when a subdomain.conf file is changed.
Steps To Reproduce
We are using docker compose and here is our docker configs:
After everything is up and running, I do:
Environment
CPU architecture
x86-64
Docker creation
`docker compose up -d`Container logs