
www.simplify-data.de
Metabase lässt sich in der Open-Source-Edition kostenlos auf eigenen Servern betreiben. Damit bleiben Dashboards, Abfragen und Zugangsdaten in Ihrer eigenen Infrastruktur. Der Eigenbetrieb verlangt aber etwas Planung, vor allem bei Datenbank, Updates und Sicherung. Dieser Artikel beschreibt, worauf Sie technisch achten sollten.
Welche Edition lässt sich selbst hosten?
Metabase wird von dem US-Unternehmen Metabase, Inc. entwickelt. Die Open-Source-Edition steht unter der Lizenz AGPL und kann ohne Lizenzkosten selbst betrieben werden. Die kostenpflichtigen Funktionen der Editionen Pro und Enterprise, etwa Berechtigungen auf Zeilenebene oder Single Sign-on, lassen sich ebenfalls selbst hosten. Dafür gibt es ein eigenes Docker-Image und einen Lizenzschlüssel (Stand: November 2026).
| Edition | Docker-Image | Lizenzschlüssel |
|---|---|---|
| Open Source | metabase/metabase |
nicht nötig |
| Pro / Enterprise | metabase/metabase-enterprise |
erforderlich |
Alternativ zu Docker gibt es Metabase als JAR-Datei, die mit einer Java-Laufzeitumgebung gestartet wird. In der Praxis ist Docker meist einfacher zu betreiben und zu aktualisieren.
Die Architektur im Überblick
Ein selbst gehostetes Metabase besteht aus drei Bausteinen:
- Metabase-Anwendung: läuft im Container und lauscht standardmäßig auf Port 3000.
- Anwendungsdatenbank: speichert Benutzerkonten, Fragen, Dashboards, Sammlungen und Einstellungen.
- Datenquellen: Ihre eigentlichen Datenbanken oder Data Warehouses, die Metabase abfragt.
Wichtig ist die Unterscheidung zwischen Punkt 2 und 3. Die Anwendungsdatenbank enthält die Arbeit Ihrer Nutzer, nicht Ihre Geschäftsdaten. Geht sie verloren, sind alle Dashboards weg, auch wenn die Datenquellen unverändert vorhanden sind.
Davor sollte ein Reverse Proxy stehen, etwa Nginx, Caddy oder Traefik. Er nimmt Anfragen über HTTPS entgegen, kümmert sich um das TLS-Zertifikat und leitet sie an den Metabase-Container weiter.
Die Anwendungsdatenbank richtig wählen
Ohne weitere Konfiguration nutzt Metabase eine eingebaute H2-Datenbank, die als Datei gespeichert wird. Die Metabase-Dokumentation rät ausdrücklich davon ab, H2 produktiv zu nutzen. Im Docker-Betrieb kommt hinzu: Liegt die Datei im Container, ist sie beim Entfernen des Containers verloren.
Für den Produktivbetrieb empfiehlt Metabase PostgreSQL. MySQL und MariaDB werden ebenfalls unterstützt, PostgreSQL ist aber die bevorzugte Wahl. Die Datenbank muss vorab angelegt werden, bei PostgreSQL mit UTF-8-Kodierung. Die Tabellen erzeugt Metabase beim ersten Start selbst.
Die Verbindung wird über Umgebungsvariablen konfiguriert:
MB_DB_TYPE=postgres
MB_DB_HOST=db.intern.example
MB_DB_PORT=5432
MB_DB_DBNAME=metabase
MB_DB_USER=metabase
MB_DB_PASS=GEHEIMES_PASSWORT
Alternativ lässt sich mit MB_DB_CONNECTION_URI eine vollständige JDBC-Verbindungszeichenfolge angeben, etwa um SSL-Optionen zu setzen. Passwörter sollten Sie nicht im Klartext in Compose-Dateien ablegen. Die Dokumentation empfiehlt dafür Docker Secrets.
Starten Sie direkt mit PostgreSQL. Eine spätere Migration von H2 ist laut Dokumentation nur eingeschränkt unterstützt.
Betrieb mit Docker
Für den Betrieb hat sich Docker Compose bewährt, mit einem Dienst für Metabase und einem für PostgreSQL, sofern Sie keinen separaten Datenbankserver nutzen. Einige Punkte sollten Sie dabei beachten:
- Version festschreiben: Verwenden Sie statt
latesteinen konkreten Versions-Tag. So entscheiden Sie selbst, wann ein Update stattfindet. - Health-Check: Metabase stellt unter
/api/healtheinen Endpunkt bereit, den Docker oder Ihr Monitoring abfragen kann. - Zeitzone: Über
JAVA_TIMEZONElässt sich die Zeitzone der Anwendung setzen. - Beispielkonfiguration nicht ungeprüft übernehmen: Die Compose-Beispiele in der Dokumentation sind laut Metabase nicht für den Produktivbetrieb gedacht.
Sicherheit beim Zugriff auf Datenquellen
Metabase braucht für jede Datenquelle Zugangsdaten. Legen Sie dafür eigene Datenbankbenutzer an, die nur lesend auf die benötigten Schemata oder Tabellen zugreifen dürfen. So kann auch ein Fehler in einer Abfrage keine Daten verändern.
Stellen Sie Metabase außerdem nicht ungeschützt ins Internet, wenn das nicht nötig ist. Ein Zugriff nur aus dem Firmennetz oder über ein VPN reduziert die Angriffsfläche erheblich. Halten Sie zudem die Zahl der Administratorkonten klein.
Updates sicher durchführen
Metabase veröffentlicht regelmäßig neue Versionen. Beim Start einer neuen Version passt Metabase das Schema der Anwendungsdatenbank automatisch an (Migration). Daraus ergibt sich ein klarer Ablauf:
- Versionshinweise lesen.
- Anwendungsdatenbank sichern.
- Den laufenden Container stoppen.
- Das neue Image mit konkretem Versions-Tag laden.
- Einen neuen Container mit derselben Anwendungsdatenbank starten und die Migration abschließen lassen.
- Wichtige Dashboards stichprobenartig prüfen.
Ein Zurückkehren auf eine ältere Version ist nach größeren Updates nicht ohne Weiteres möglich. Die Dokumentation empfiehlt als bevorzugten Weg die Wiederherstellung aus dem Backup. Laufen mehrere Metabase-Instanzen parallel, sollten Sie vor dem Update auf eine Instanz reduzieren und den Prozess während der Migration nicht unterbrechen, da sonst die Anwendungsdatenbank beschädigt werden kann.
Backups planen
Das Wichtigste ist die Sicherung der Anwendungsdatenbank. Bei PostgreSQL genügt laut Metabase ein Dump der Metabase-Datenbank, zum Beispiel mit pg_dump. Planen Sie diese Sicherung automatisch, etwa täglich, und bewahren Sie die Dateien außerhalb des Servers auf.
Testen Sie die Wiederherstellung regelmäßig. Ein Backup, das nie zurückgespielt wurde, gibt nur scheinbare Sicherheit. Ihre eigentlichen Datenquellen sind davon unabhängig und brauchen eine eigene Sicherungsstrategie.
Checkliste für den Eigenbetrieb
- Edition wählen: Open Source oder Pro/Enterprise mit Lizenzschlüssel.
- PostgreSQL-Datenbank mit UTF-8 für die Anwendungsdaten anlegen.
- Metabase per Docker Compose mit festem Versions-Tag betreiben.
- Zugangsdaten über Docker Secrets oder eine vergleichbare Lösung verwalten.
- Reverse Proxy mit HTTPS einrichten und den Zugriff auf Firmennetz oder VPN beschränken.
- Lesende Datenbankbenutzer für alle Datenquellen anlegen.
- Tägliche Backups der Anwendungsdatenbank automatisieren und die Wiederherstellung testen.
- Updates mit vorherigem Backup und kurzer Prüfung danach durchführen.
Unterstützung durch Simplify Data
Simplify Data richtet Metabase für Unternehmen in Kiel, Schleswig-Holstein, Hamburg und remote deutschlandweit auf eigenen Servern ein und unterstützt Sie bei Betrieb, Updates und Backups. Mehr dazu auf unserer Seite zu Metabase.
