Firefly III - persönliche Finanzen und Haushaltsbuch selbst hosten

Firefly III - persönliche Finanzen und Haushaltsbuch selbst hosten

Firefly III ist eine selbst gehostete Finanzverwaltung, die Einnahmen, Ausgaben, Budgets und Kategorien übersichtlich zusammenfasst und dabei alle Daten auf dem eigenen Server behält.

Was ist Firefly III?

Firefly III ist eine der ausgereiftesten quelloffenen Lösungen für persönliche Finanzen. Die Anwendung verwaltet mehrere Konten (Girokonto, Sparkonto, Kreditkarte), kategorisiert Transaktionen automatisch per Regeln, erstellt Budgets und visualisiert Ausgabenmuster in Grafiken. Ein optionaler Data-Importer erlaubt den automatisierten Import von CSV-Exporten aus Online-Banking-Portalen. Da alle Daten lokal gespeichert werden, eignet sich Firefly III besonders für alle, die ihre Finanzdaten keinem Cloud-Dienst anvertrauen möchten.

Voraussetzungen

  • Docker 20.10+ / Docker Compose
  • MariaDB oder PostgreSQL als Datenbankserver
  • APP_KEY (32 Zeichen, zufällig generiert): php artisan key:generate --show oder openssl rand -base64 32

Compose-Beispiel

services:
  firefly:
    image: fireflyiii/core:latest
    container_name: firefly
    restart: unless-stopped
    ports:
      - "8080:8080"
    volumes:
      - ./upload:/var/www/html/storage/upload
    environment:
      - APP_KEY=SomeLongRandomStringOf32Characters
      - APP_URL=http://localhost:8080
      - DB_CONNECTION=mysql
      - DB_HOST=firefly-db
      - DB_PORT=3306
      - DB_DATABASE=firefly
      - DB_USERNAME=firefly
      - DB_PASSWORD=sicheres_passwort
    depends_on:
      - firefly-db

  firefly-db:
    image: mariadb:10.11
    container_name: firefly-db
    restart: unless-stopped
    volumes:
      - ./db:/var/lib/mysql
    environment:
      - MYSQL_DATABASE=firefly
      - MYSQL_USER=firefly
      - MYSQL_PASSWORD=sicheres_passwort
      - MYSQL_ROOT_PASSWORD=root_passwort

Hinweise

  • APP_KEY geheim halten: Den generierten Schlüssel in einer .env-Datei speichern und nie ins Repository committen — er verschlüsselt sensible Datenbankfelder.
  • Data-Importer: Das separate Image fireflyiii/data-importer ermöglicht den automatisierten CSV- und CAMT-Import sowie die Verbindung zu Nordigen/GoCardless für echtes Open-Banking.
  • Cron-Job einrichten: Wiederkehrende Transaktionen und automatische Regeln benötigen einen täglichen Cron-Job, der artisan firefly-iii:cron ausführt.
  • Datensicherung: Regelmäßig einen Datenbankdump sowie das upload-Verzeichnis sichern.