From 811fcb327e25a2f4506516eb9f76615503420dda Mon Sep 17 00:00:00 2001 From: Jon Mills <40585882+itsalljustdata@users.noreply.github.com> Date: Wed, 15 Jul 2026 10:28:51 +0800 Subject: [PATCH] Load secrets from _FILE environment variables Added processing of _FILE environment variables to load secrets from files. --- packaging/docker/entrypoint.sh | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/packaging/docker/entrypoint.sh b/packaging/docker/entrypoint.sh index f44cca9bd..5c6ed56c0 100644 --- a/packaging/docker/entrypoint.sh +++ b/packaging/docker/entrypoint.sh @@ -34,4 +34,16 @@ fi mkdir -p /app/data /bookdrop /books chown "$USER_ID:$GROUP_ID" /app/data /bookdrop /books 2>/dev/null || true +# Process _FILE environment variables for secrets +for var in $(env | grep '_FILE=' | cut -d= -f1); do + file_path=$(eval echo \$$var) + if [ -n "$file_path" ] && [ -f "$file_path" ]; then + var_name=${var%_FILE} + export "$var_name"=$(cat "$file_path") + echo "✓ Loaded $var_name from $file_path" + elif [ -n "$file_path" ]; then + echo "⚠ Warning: File $file_path not found for $var" + fi +done + exec su-exec "$USER_ID:$GROUP_ID" "$@"