# ============================================================================= # moneyfy – Beispielkonfiguration # Kopieren nach `.env` und anpassen. Niemals echte Secrets committen. # ============================================================================= # --- Allgemein --------------------------------------------------------------- ENVIRONMENT=production # development | production | test DEBUG=false TIMEZONE=Europe/Berlin # Durchgängige Zeitzone der Anwendung HOLIDAY_REGION=DE-NW # Feiertagsregion für Werktagsverschiebungen DEFAULT_CURRENCY=EUR # Öffentliche Basis-URL, u. a. für Links in Benachrichtigungen PUBLIC_BASE_URL=https://moneyfy.menzel.center # Image-Tag, den docker-compose zieht (main, 0.1.0, latest, sha-abc1234) TAG=latest # --- Datenbank --------------------------------------------------------------- POSTGRES_DB=moneyfy POSTGRES_USER=moneyfy POSTGRES_PASSWORD=bitte-aendern # Wird beim Betrieb mit Compose aus den drei Werten darüber zusammengesetzt und # muss dort nicht gesetzt werden. Nur für den Betrieb ohne Compose nötig. # `postgresql://` wird automatisch auf asyncpg umgestellt. DATABASE_URL=postgresql+asyncpg://moneyfy:bitte-aendern@moneyfy-db:5432/moneyfy # --- Sicherheit -------------------------------------------------------------- # Signaturschlüssel für JWTs, mindestens 32 Zeichen. # Erzeugen mit: openssl rand -hex 32 SECRET_KEY=bitte-aendern-mindestens-32-zeichen-lang ACCESS_TOKEN_TTL_MINUTES=30 REFRESH_TOKEN_TTL_DAYS=14 COOKIE_SECURE=true # Hinter HTTPS-Proxy true, für lokales HTTP false COOKIE_DOMAIN= # Wird beim ersten Start angelegt (danach mit erzwungenem Passwortwechsel). MONEYFY_ADMIN_USER=admin MONEYFY_ADMIN_PASSWORD=bitte-aendern # --- OIDC (vorbereitet, noch nicht implementiert) ---------------------------- OIDC_ENABLED=false OIDC_ISSUER= OIDC_CLIENT_ID= OIDC_CLIENT_SECRET= OIDC_SCOPES=openid profile email # --- Logo-Service ------------------------------------------------------------ # Verzeichnis für den lokalen Logo-Cache. Beim Betrieb mit Compose zeigt es fest # auf das Volume und muss hier nicht gesetzt werden. Logos werden ausschließlich # von dort ausgeliefert – im Seitenaufruf entsteht kein Zugriff nach außen. LOGO_STORAGE_DIR=/data/logos # Der lokale simple-icons-Katalog deckt die meisten Marken ohne Netzzugriff ab. # Die folgenden Provider sind optional; ohne Schlüssel wird der jeweilige # Adapter stillschweigend übersprungen. # logo.dev: veröffentlichbarer Token von https://www.logo.dev # Achtung: Auf dem kostenlosen Tarif verlangt logo.dev bei kommerzieller # Nutzung einen sichtbaren Rückverweis. Für private Nutzung entfällt das. LOGODEV_API_KEY= # Brandfetch: API-Schlüssel der Brand API (https://docs.brandfetch.com). # Wird nur genutzt, wenn zur Firma eine Domain hinterlegt ist. BRANDFETCH_API_KEY= LOGO_HTTP_TIMEOUT_SECONDS=5 LOGO_HTTP_RETRIES=2 LOGO_MAX_UPLOAD_BYTES=1048576 # Sucht nach dem Anlegen einer Firma automatisch im Hintergrund nach einem Logo. LOGO_AUTO_RESOLVE=true # --- Benachrichtigungen ------------------------------------------------------ NOTIFICATIONS_ENABLED=true SCHEDULER_ENABLED=true NOTIFICATION_HOUR=7 # Täglicher Lauf um 07:00 Europe/Berlin NOTIFICATION_MINUTE=0 SMTP_HOST= SMTP_PORT=587 SMTP_USER= SMTP_PASSWORD= SMTP_FROM=moneyfy@example.com SMTP_USE_TLS=true # STARTTLS SMTP_USE_SSL=false # Implizites TLS (Port 465) # Komma-separierte Apprise-URLs, z. B. ntfy://host/topic,discord://... APPRISE_URLS= # --- CORS -------------------------------------------------------------------- # Nur für getrennte Frontend-Entwicklung nötig, z. B. http://localhost:5173 CORS_ORIGINS=