From c23a1cb343fba3bf9ebb7f1f8a64d0154501db25 Mon Sep 17 00:00:00 2001 From: Askhat Akhtanov Date: Sun, 1 Nov 2026 13:33:27 +0500 Subject: [PATCH] fix: remove stale nginx pid file before starting nginx When /run/nginx is already owned by PUID:PGID, the ownership step skips it, so a leftover nginx.pid owned by root stays in place and nginx, running as PUID:PGID, fails with "Permission denied" on every start. Nginx is not running yet during prepare, so remove the pid file there. Fixes #5964 Co-Authored-By: Claude Opus 5.5 --- docker/rootfs/etc/s6-overlay/s6-rc.d/prepare/20-paths.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/docker/rootfs/etc/s6-overlay/s6-rc.d/prepare/20-paths.sh b/docker/rootfs/etc/s6-overlay/s6-rc.d/prepare/20-paths.sh index 2f59ef41a..ebbcd958c 100755 --- a/docker/rootfs/etc/s6-overlay/s6-rc.d/prepare/20-paths.sh +++ b/docker/rootfs/etc/s6-overlay/s6-rc.d/prepare/20-paths.sh @@ -39,3 +39,7 @@ touch /var/log/nginx/error.log || true chmod 777 /var/log/nginx/error.log || true chmod -R 777 /var/cache/nginx || true chmod 644 /etc/logrotate.d/nginx-proxy-manager + +# nginx has not been started yet, so any pid file here is stale. Remove it, +# otherwise a pid file owned by another user stops nginx starting as PUID:PGID +rm -f /run/nginx/nginx.pid