From f4c05cf9ccfbaf41b179b70264b9e9d1f4d1748e Mon Sep 17 00:00:00 2001 From: ian351c Date: Wed, 5 Jun 2024 10:50:14 -0400 Subject: [PATCH] Update 30-ownership.sh Make setting file permissions optional with SKIP_FILE_OWNERSHIP environment variable. --- .../s6-rc.d/prepare/30-ownership.sh | 50 +++++++++++-------- 1 file changed, 28 insertions(+), 22 deletions(-) diff --git a/docker/rootfs/etc/s6-overlay/s6-rc.d/prepare/30-ownership.sh b/docker/rootfs/etc/s6-overlay/s6-rc.d/prepare/30-ownership.sh index 378cc9ca..e4798423 100755 --- a/docker/rootfs/etc/s6-overlay/s6-rc.d/prepare/30-ownership.sh +++ b/docker/rootfs/etc/s6-overlay/s6-rc.d/prepare/30-ownership.sh @@ -3,26 +3,32 @@ set -e -log_info 'Setting ownership ...' +# Lowercase +SKIP_FILE_OWNERSHIP=$(echo "${SKIP_FILE_OWNERSHIP:-}" | tr '[:upper:]' '[:lower:]') -# root -chown root /tmp/nginx - -# npm user and group -chown -R "$PUID:$PGID" /data -chown -R "$PUID:$PGID" /etc/letsencrypt -chown -R "$PUID:$PGID" /run/nginx -chown -R "$PUID:$PGID" /tmp/nginx -chown -R "$PUID:$PGID" /var/cache/nginx -chown -R "$PUID:$PGID" /var/lib/logrotate -chown -R "$PUID:$PGID" /var/lib/nginx -chown -R "$PUID:$PGID" /var/log/nginx - -# Don't chown entire /etc/nginx folder as this causes crashes on some systems -chown -R "$PUID:$PGID" /etc/nginx/nginx -chown -R "$PUID:$PGID" /etc/nginx/nginx.conf -chown -R "$PUID:$PGID" /etc/nginx/conf.d - -# Prevents errors when installing python certbot plugins when non-root -chown "$PUID:$PGID" /opt/certbot /opt/certbot/bin -find /opt/certbot/lib/python*/site-packages -not -user "$PUID" -execdir chown "$PUID:$PGID" {} \+ +if [ "$SKIP_FILE_OWNERSHIP" == "false" ] || [ "$SKIP_FILE_OWNERSHIP" == "off" ] || [ "$SKIP_FILE_OWNERSHIP" == "0" ] || [ "$SKIP_FILE_OWNERSHIP" == "no" ]; then + log_info 'Skipping ownership, use only with caution ...' +else + log_info 'Setting ownership ...' + # root + chown root /tmp/nginx + + # npm user and group + chown -R "$PUID:$PGID" /data + chown -R "$PUID:$PGID" /etc/letsencrypt + chown -R "$PUID:$PGID" /run/nginx + chown -R "$PUID:$PGID" /tmp/nginx + chown -R "$PUID:$PGID" /var/cache/nginx + chown -R "$PUID:$PGID" /var/lib/logrotate + chown -R "$PUID:$PGID" /var/lib/nginx + chown -R "$PUID:$PGID" /var/log/nginx + + # Don't chown entire /etc/nginx folder as this causes crashes on some systems + chown -R "$PUID:$PGID" /etc/nginx/nginx + chown -R "$PUID:$PGID" /etc/nginx/nginx.conf + chown -R "$PUID:$PGID" /etc/nginx/conf.d + + # Prevents errors when installing python certbot plugins when non-root + chown "$PUID:$PGID" /opt/certbot /opt/certbot/bin + find /opt/certbot/lib/python*/site-packages -not -user "$PUID" -execdir chown "$PUID:$PGID" {} \+ +fi