add Caddy and Authelia support with configuration scripts and Docker setup

This commit is contained in:
Eduardo Silva
2026-03-14 22:56:47 -03:00
parent d0f0b6eb74
commit b02f7fcc87
8 changed files with 649 additions and 13 deletions

View File

@@ -1,10 +1,32 @@
#!/bin/sh
#!/bin/bash
set -eu
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
PYTHON="${SCRIPT_DIR}/.venv/bin/python3"
JSON_DIR="${JSON_DIR:-/caddy_json_export}"
CADDYFILE_PATH="${CADDYFILE_PATH:-/etc/caddy/Caddyfile}"
echo "==> Generating wireguard_webadmin.json..."
"$PYTHON" "${SCRIPT_DIR}/export_wireguard_webadmin_config.py"
exec "$@"
echo "==> Processing config files..."
"$PYTHON" "${SCRIPT_DIR}/process_config.py"
echo "==> Starting Caddy..."
caddy run --config "$CADDYFILE_PATH" --adapter caddyfile &
CADDY_PID=$!
sleep 2
echo "==> Watching ${JSON_DIR} for config changes..."
while true; do
inotifywait -qq -e close_write,moved_to,create "${JSON_DIR}/" --include '.*\.json$' 2>/dev/null || true
sleep 1
echo "==> Config change detected, reprocessing..."
"$PYTHON" "${SCRIPT_DIR}/process_config.py"
echo "==> Reloading Caddy..."
caddy reload --config "$CADDYFILE_PATH" --adapter caddyfile 2>/dev/null || echo "Warning: Caddy reload failed, will retry on next change."
done