# famapp stack secrets — injected into all services via env_file. # Var names are exactly what each container reads (no ${VAR} interpolation, # no Portainer UI env vars). POSTGRES_* (db) are embedded in DATABASE_URL # (app) — keep them in sync on rotation. MINIO_ROOT_* are shared by the app # and the minio server. Image tag is pinned in docker-compose.yml. RUN_MIGRATIONS=true LOG_LEVEL=info AUTH_URL=https://fam.ginnoir.com # postgres (db container) + the composed URL the app reads POSTGRES_USER=famapp POSTGRES_PASSWORD=a9a999d16dd5cdc521bb62eff331265d3c24 POSTGRES_DB=famapp DATABASE_URL=postgres://famapp:a9a999d16dd5cdc521bb62eff331265d3c24@famapp-db:5432/famapp # famapp Auth.js session secret AUTH_SECRET=CJsICgBs78YxxSdJfS8KU9Zn9k+QytRoVui9kVtuHtI= # OIDC via Authentik (public URL through Caddy — no container dependency) AUTH_OIDC_ISSUER=https://auth.ginnoir.com/application/o/famapp/ AUTH_OIDC_CLIENT_ID=6uOZ8yjTR9Z2m1RZU1cLHYXHV2Lv6zZtfuJcrsdq AUTH_OIDC_CLIENT_SECRET=CPcNM8jXaJ2jHFKxRwGuuKyMKJsT502l3FztO1AOcFqDzWqlWu5x7Ox52Q6zyBa2v33YzoA9igrXW8FFjd1Gp7wrZV4PGTwvXmOd7pIMOY93gNotAgJaewT8WHW1F3YD VAPID_PUBLIC_KEY=BNED_UgfPhyoG6_JOabhpQpN3nr6QM5tO0PDiAadMGCcZROn8LM7tnsBrKaB1E5kfuDFb1rC_M86cT3uCvBqSBk VAPID_PRIVATE_KEY=QyJiyCI2TJa_QWVXznfj4vjpWTBsyFfSCtn1brpE9aI VAPID_SUBJECT=mailto:3nigma.matt@gmail.com NTFY_URL=https://ntfy.ginnoir.com NTFY_TOPIC=famapp # MinIO object storage (plant/container image uploads) MINIO_ROOT_USER=famapp MINIO_ROOT_PASSWORD=d0fet0th3x MINIO_BUCKET=garden OPENPLANTBOOK_CLIENT_ID=5JdQLab69RhVaF4er7b7D29BCrkf3fo3OEiDsOQa OPENPLANTBOOK_CLIENT_SECRET=kxPTrdQPAVta7sjVuIRf5EGIJ1fKvlMlqRSJpQtFxRftJhg7oeGnXzwH7ls6tluQLFUYVDYRMwISiAuKZGZLvkuJzUwFGCwhZw7UtW8OvcTGy4717WeNUinvuCDSsNXP # LLM assistant (OpenAI-compatible — same as local dev for now) LLM_PROVIDER=openai LLM_BASE_URL=http://192.168.1.121:8080/v1 LLM_API_KEY=famapp-unc-f04f7ef0baf68d542d10a501 LLM_MODEL=auto # IANA timezone for assistant relative dates ("Thursday at 2") HOUSEHOLD_TIMEZONE=America/Chicago