Mealie einrichten: Selbstgehostete Rezeptverwaltung mit Docker Compose
Stapelweise Rezeptkarten, zerschnittene Zeitungsausschnitte und Reste kalter URL-Links: Viele Hobbykochs haben ihre Inspiration zerstreut, weil sie sie in fünf verschiedenen Apps und Clouds hinterlegt haben. Mealie ändert das. Die quelloffene Plattform bündelt Rezepte, Meal-Planer und Einkaufsliste an einem Ort – selbst gehostet, ohne Tracking und ohne Abo. In dieser Anleitung baust du Mealie mit Docker Compose auf, importierst deine ersten Rezepte und richtest ein wöchentliches Planungssystem ein, das du danach täglich nutzt.
Was ist Mealie und warum selbst hosten?
Mealie (früher Mew) ist eine selbst gehostete Koch- und Rezeptplattform, die aus drei Bausteinen besteht: einer Rezeptdatenbank, einem Meal-Planer und einer automatisch generierten Einkaufsliste. Alle drei hängen zusammen: Du findest ein Rezept, planst es in die Woche ein, und Mealie listet die benötigten Zutaten zusammengefasst auf – skaliert auf die portionen, die du geplant hast.
Die Alternative ist eine Cloud-Rezept-App. Die Nachteile sind konkret:
- Datenhoheit: Deine Rezepte, Mahlzeitenpläne und Einkaufslisten bleiben auf deinem Server. Kein Anbieter parsiert, was du kochst.
- Kostenlos und ohne Abo: Mealie ist unter der MIT-Lizenz verfügbar. Keine Premium-Funktionen, die hinter einer Paywall liegen.
- Offline-fähig: Sobald Docker läuft, funktioniert Mealie lokal – ohne Internetverbindung.
- Erweiterbar: Eine offene API und Webhooks lassen sich an eigene Workflows anbinden (zum Beispiel Kalender-Synchronisation oder Per-URL-Import).
Mealie repräsentiert den Trend hin zu Self-Hosted Diensten, bei denen der Nutzer die volle Kontrolle behält. Weitere Projekte in dieser Kategorie findest du in unserem Überblick Die 15 besten Self-Hosted Dienste für dein Homelab 2026.
Funktionen im Überblick: Rezepte, Meal-Planer, Einkaufsliste
Mealie hat drei Kernbereiche, die aufeinander aufbauen:
Rezepte speichern und organisieren. Mealie unterstützt mehrere Wege, Rezepte hinzuzufügen: Manuelles Erstellen über den Editor, automatischen Import von URLs (Rezeptbilder, Zutaten und Anleitung werden dabei extrahiert) sowie JSON-Import für Stapel. Rezepte lassen sich mit Kategorien, Tags und Bildern versehen – so findest du später "quick weeknight pasta" oder "meal-prep bowls" in Sekunden.
Meal-Planer. Über den Planer legst du für jede Woche fest, welches Rezept an welchem Tag serviert wird. Mealie zeigt den Plan als Kalenderansicht an und summiert automatisch die Zutaten für die geplanten Portionen.
Einkaufsliste. Aus dem Meal-Plan werden die Zutaten direkt in die Einkaufsliste überführt – gruppiert nach Kategorien wie Gemüse, Milchprodukte oder Gewürze. Du kannst die Liste manuell anpassen, ganze Zeilen streichen oder Portionsänderungen vornehmen, bevor du einkaufst.
Mealie per Docker Compose installieren
Die Installation führt über Docker Compose – vergleichbar zur docker-compose.yml-Nachstellung von Paperless-ngx. Self-Hosting mit Docker ist das robusteste Format: Einzelne Containerspitzen sind isoliert, Daten liegen in Named Volumes und Updates sind ein docker compose pull && docker compose up -d.
Voraussetzungen
- Ein Server oder NAS, auf dem Docker Compose verfügbar ist. Empfehlungen für die Hardware findest du in unseren Guides NAS-2026, Minipc-Homelab und Proxmox-Einsteiger-Guide.
- Grundkenntnisse von Docker Compose (Begleitartikel: Docker-Einsteiger).
- Optional: Ein Reverse Proxy vor Mealie, wenn der Dienst aus dem Internet erreichbar sein soll. Der Aufbau erklärt unser Reverse-Proxy-Artikel.
Verzeichnisstruktur
Erstelle ein Projektverzeichnis und strukturiere es so:
/home/mealie/
├── docker-compose.yml
├── mealieconfig/
│ └── mealieconfig.yml
└── data/ ← von Docker verwaltet (Volumen)
Die App und die Daten werden durch Docker in Volumes gehalten. Konfigurationsänderungen landen in der eigenen mealieconfig/-Ordnerstruktur, damit sie beim Update bestehen bleiben.
docker-compose.yml
Die minimale Konfiguration für Mealie umfasst den Web-Container und ein Daten-Volumen:
services:
mealie:
image: gustaphe/mealie:latest
container_name: mealie
restart: unless-stopped
ports:
- "8080:80"
volumes:
- ./data:/app/data
- ./mealieconfig:/app/config
environment:
- MEALIE_SECRET_KEY=changeme-in-production
- MEALIE_TIMEZONE=Europe/Berlin
- MEALIE_FIRST_NAME=Admin
- MEALIE_LAST_NAME=User
- MEALIE_EMAIL=admin@localhost
- MEALIE_USERNAME=admin
- MEALIE_PASSWORD=changeme-in-production
- MEALIE_REGISTERABLE=off
Wichtige Punkte bei der Konfiguration:
MEALIE_SECRET_KEYmuss im Produktivbetrieb durch einen zufälligen, langen Wert ersetzt werden – er schützt die Sitzungen und internen Token.MEALIE_TIMEZONEsollte auf deine Zeitzone gesetzt werden, damit Meal-Planer und Einkaufsliste korrekt datiert sind.- Die Standard-Bindung an Port 8080 lässt sich an ein freies Interface anpassen oder über einen Reverse Proxy (z. B. Nginx Proxy Manager) nach außen schalten.
- Um Datenbanken mittels PostgreSQL statt der eingebauten SQLite-Version zu betreiben, füge einen
db-Block mit einem postgres-Container und die passenden Umgebungsvariablen hinzu.
Erster Start und Admin-Login
Starte den Stack mit:
docker compose up -d
Danach erreichst du die Oberfläche unter http://<deine-ip>:8080. Beim allerersten Start erstellt Mealie automatisch das Admin-Konto aus den Umgebungsvariablen. Melde dich mit den in der docker-compose.yml angegebenen Zugangsdaten an.
Nach dem Login solltest du sofort:
1. Den MEALIE_SECRET_KEY und das Admin-Passwort im laufenden Betrieb durch einen neuen Wert ersetzen (über die Oberfläche oder neuestart mit aktualisierter Compose-Datei).
2. Zu den Einstellungen navigieren und die Sprach- und Datumsformatierung auf Deutsch stellen.
3. Optional: E-Mail-Benachrichtigungen aktivieren, falls du die Einkaufslisten per Post versenden möchtest (erfordert SMTP-Konfiguration in den Einstellungen).
Rezepte importieren und organisieren
Mealie bringt mehrere Import-Methoden mit, damit du nicht Manuelles Eintippen für jedes Rezept wiederholst.
Import von URLs
Die praktischste Methode: Kopiere die URL eines Rezepts in das Import-Feld. Mealie holt die Seite, extrahiert Titel, Zutaten, Anleitungsschritte und Bilder und erstellt einen neuen Rezept-Eintrag. Das Verfahren ist nicht zuverlässig für jede Website – unübliche Site-Strukturen führen zu unvollständigen Imports – aber die meisten großen Rezept-Seiten funktionieren.
JSON-Import für Stapel
Für Sammlungen mehrerer Rezepte gleichzeitig bietet Mealie einen JSON-Import an. Das JSON-Schema orientiert sich an einem einfachen Format: Titel, Zutatenliste (je Zutat mit Menge und Einheit), Anleitung als Array von Schritten und optionale Felder für Tags, Kategorien und Bild-URL. Das ist nützlich, wenn du Legacy-Rezeptdaten aus einem anderen System übernimmst.
Kategorien, Tags und Bilder
Rezepte lassen sich nach Tags (z. B. "vegetarisch", "meal-prep", "under 30 min") und Kategorien (z. B. "Hauptgericht", "Dessert", "Snack") organisieren. Kategorien strukturieren die Browse-Ansicht, Tags ermöglichen facettenartige Filter. Rezepte ohne eigenes Bild kannst du später durch Upload oder URL ergänzen.
Backup und Updates
Mealie speichert seine Daten in einem Docker-Volumen. Ein Backup des data/-Ordners reicht für die meisten Installationen. Der Ordner enthält die SQLite-Datenbank, hochgeladene Bilder und Konfigurationsdateien.
Backup: Kopiere regelmäßig den data/-Ordner auf dein Backup-Ziel (lokale NAS, externen Stick, objektstorage-Backup). Für automatisierte Backups auf Proxmox-Ebene siehe Proxmox-Backups automatisieren.
Updates: Pull das neueste Image und bilde den Container neu:
docker compose pull
docker compose up -d
Vor einem Update unbedingt ein aktuelles Backup erstellen – Datenbankmigrationen kommen mit neueren Releases und können in seltenen Fällen nicht rückgängig gemacht werden.
FAQ zu Mealie
Kann ich Mealie mit mehreren Personen teilen?
Ja. Mealie unterstützt mehrere Benutzer mit unterschiedlichen Rollen. Du kannst Leserechte, Schreibzugänge und Admin-Berechtigungen pro Nutzer vergeben. Das ist nützlich für Haushalte, Familien oder kleine Gemeinschaften, die gemeinsam planen.
Welche Alternativen gibt es zu Mealie?
TastyPlan (eher kuratierte Community-Plattform), Paprika (Passive Rezept-Sammlung ohne Meal-Planner) und Supercook (reiner Einkaufs-Assistent). Mealie kombiniert drei Bausteine in einem und läuft selbst gehostet.
Reicht der eingebauten SQLite-Datenbank?
Für Einzelnutzer und kleine Haushalte ja. Bei mehreren gleichzeitigen Nutzern mit häufigen Schreibvorgängen kann PostgreSQL skalierbarer sein – die Container-Konfiguration ist dafür anpassbar.
Kann ich Mealie mit einem Kalender synchronisieren?
Mealie exportiert Plan-Daten. Eine vollumfängliche Kalender-Synchronisation (z. B. nach Google Calendar oder CalDAV) ist kein Kernfeature, lässt sich aber über Webhooks oder den API-Zugriff anbinden.
Läuft Mealie auf einem Raspberry Pi?
Prinzipiell ja, da Mealie in Python läuft und der Container nicht GPU-beschleunigt. Für reine Textverarbeitung mit wenigen Nutzern ist ein Pi ausreichend; Import-Performance (Bildverarbeitung, OCR) profitiert von etwas mehr CPU-Power. Empfehlungen für Low-Power-Hardware findest du im Raspberry Pi Homelab.
Interne Links
- Die 15 besten Self-Hosted Dienste für dein Homelab 2026 – Mealie im Kontext anderer Dienste
- Docker-Einsteiger – Grundlagen zu Docker Compose
- NAS-2026 – Hardware-Empfehlungen für selbst gehostete Dienste
- Proxmox-Einsteiger-Guide – Betriebssystem für den Dienst-Hoster
- Reverse-Proxy – Dienste sicher aus dem Internet erreichbar machen
- Stromkosten im Homelab – Betriebskosten einkalkulieren
Affiliate-Hinweis (noch nicht live): In einer späteren Version dieses Artikels werden Affiliate-Links zu Synology NAS (DS223/DS423) als Host und Hetzner-VPS für externes Hosting eingefügt. Die Links werden erst nach Konfiguration mit echten Publisher-IDs aktiviert und durch eine Offenlegung nach §5 DDG gekennzeichnet.
Hinweis: Dieser Artikel ist redaktioneller Inhalt und enthält keine Affiliate- oder Partner-Links. Alle Angaben entsprechen dem Stand 2026 und können sich ändern.