arr-summary/docker-compose.yml
Barely Removable 600a48da93
All checks were successful
Deploy / deploy (push) Successful in 21s
Persist settings.json across deploys via a data volume
The previous commit made Settings-saved API keys override .env, but the
key still never survived: settings.json was written to the container
filesystem, and every deploy runs `up -d --build`, which recreates the
container and discards it. Saving a rotated SABnzbd key and restarting
therefore still fell back to the stale .env value.

SETTINGS_FILE is now configurable and pointed at /data/settings.json on
a ./data bind mount, so runtime settings live on the host. The deploy
rsync also excludes data/ — it runs --delete and would otherwise wipe
the directory for not being in the repo, reintroducing the same bug.

This affected everything the Settings page writes, not just API keys:
timezone and a UI-changed login password were being reverted on every
deploy too.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-26 09:34:46 -07:00

37 lines
1.7 KiB
YAML

services:
arr-summary:
build: .
container_name: arr-summary
ports:
- "${HOST_PORT:-5055}:5000"
volumes:
# Runtime settings (API keys saved via the Settings page, timezone,
# changed login password) must outlive `up -d --build`, which
# recreates the container and discards its filesystem.
- ./data:/data
environment:
# ── Login / proxy ──────────────────────────────────────
- LOGIN_PASSWORD=${LOGIN_PASSWORD}
- SECRET_KEY=${SECRET_KEY}
- SCRIPT_NAME=${SCRIPT_NAME:-}
- SETTINGS_FILE=/data/settings.json
# ── Media services ─────────────────────────────────────
- ARR_HOST=${ARR_HOST}
- SONARR_API_KEY=${SONARR_API_KEY}
- RADARR_API_KEY=${RADARR_API_KEY}
- SABNZBD_HOST=${SABNZBD_HOST:-${ARR_HOST}}
- SABNZBD_PORT=${SABNZBD_PORT:-8080}
- SABNZBD_API_KEY=${SABNZBD_API_KEY}
- TAUTULLI_HOST=${TAUTULLI_HOST:-${ARR_HOST}}
- TAUTULLI_PORT=${TAUTULLI_PORT:-8181}
- TAUTULLI_API_KEY=${TAUTULLI_API_KEY}
- PROWLARR_HOST=${PROWLARR_HOST:-${ARR_HOST}}
- PROWLARR_PORT=${PROWLARR_PORT:-9696}
- PROWLARR_API_KEY=${PROWLARR_API_KEY}
- OMBI_HOST=${OMBI_HOST:-${ARR_HOST}}
- OMBI_PORT=${OMBI_PORT:-3579}
- OMBI_API_KEY=${OMBI_API_KEY}
# ── Unraid ─────────────────────────────────────────────
- UNRAID_HOST=${UNRAID_HOST:-${ARR_HOST}}
- UNRAID_API_KEY=${UNRAID_API_KEY}
restart: unless-stopped