📘Einführung
Datenmonster ist ein selbst-gehostetes ETL-Tool mit visuellem Mapping-Editor. Es läuft vollständig per Docker Compose auf deiner eigenen Infrastruktur – ohne Cloud-Abhängigkeit und mit voller Datenkontrolle.
Architektur
Datenmonster läuft als Docker-Compose-Verbund mehrerer Container, die gemeinsam gestartet werden.
- ▹Frontend – Web-UI, standardmäßig auf Port 5174
- ▹Backend – FastAPI REST-API & ETL-Engine, Port 8000
- ▹Ollama – lokales LLM für alle KI-Funktionen (keine Cloud)
- ▹Datenbank – standardmäßig SQLite; Daten liegen in Docker-Volumes und bleiben bei Updates erhalten
✅Voraussetzungen
Datenmonster benötigt lediglich Docker und Docker Compose. Alles Weitere bringt das Image mit.
- ▹Docker Engine 20.10 oder neuer
- ▹Docker Compose v2 (Plugin) oder docker-compose
- ▹Linux, macOS oder Windows (mit Docker Desktop / WSL2)
- ▹Ca. 1 GB freier RAM und 2 GB Speicherplatz
Ob Docker Compose verfügbar ist, prüfst du so:
docker compose version⬇️Installation
Schnellinstallation (Linux & macOS)
Ein Befehl genügt. Das Skript prüft die Voraussetzungen, lädt Datenmonster herunter und startet es.
curl -fsSL https://raw.githubusercontent.com/choldermann/datenmonster/main/install.sh | bashManuelle Installation mit Optionen
Du kannst Zielverzeichnis und Port frei wählen:
bash install.sh --dir ~/datenmonster --port 5174- ▹--dir PFAD – Installationsverzeichnis (Standard: ~/datenmonster)
- ▹--port PORT – Port der Web-Oberfläche (Standard: 5174)
- ▹--no-start – nur installieren, nicht starten
- ▹--yes – Rückfragen automatisch bestätigen
Windows
Installiere Docker Desktop mit aktiviertem WSL2-Backend und führe die Schnellinstallation in einem WSL-Terminal aus. Alternativ lädst du die docker-compose.yml herunter und startest sie manuell mit „docker compose up -d".
⚙️Ersteinrichtung
Nach der Installation ist Datenmonster im Browser erreichbar:
http://<SERVER-IP>:5174Ersetze <SERVER-IP> durch die IP oder den Hostnamen deines Servers. Läuft Datenmonster lokal, nutze http://localhost:5174.
Admin-Konto anlegen
Beim ersten Aufruf führt dich ein Einrichtungs-Assistent durch das Anlegen des Administrator-Kontos. Danach kannst du dich anmelden und mit dem ersten Projekt starten.
Ports ändern
Den Port der Weboberfläche legst du bei der Installation mit --port fest. Nachträglich passt du ihn in der docker-compose.yml im Installationsverzeichnis an und startest neu:
cd ~/datenmonster && docker compose up -d🧩Funktionen & Nutzung
Datenmonster deckt den kompletten ETL-Prozess ab – von der Datenquelle über den visuellen Mapping-Editor und Pipelines bis zu Formularen für Endanwender.
Projekte & Datasets
Ein Projekt bündelt zusammengehörige Daten. Datasets sind die Datenquellen und werden über einen Assistenten angelegt.
- ▹Datei-Upload: CSV, XLSX, XML, ODS, MS Access
- ▹DB-Connectors: MSSQL und MySQL (wiederverwendbar)
- ▹FTP/SFTP mit Wildcard-Filter
- ▹REST-APIs (JSON)
- ▹Manuelle Datasets mit eigenem Schema
Mapping-Editor & Nodes
Das Herzstück: ein visueller Node-Editor per Drag & Drop. Quell-Datasets lassen sich per Join verknüpfen, dazwischen liegen Transformations- und Integrations-Nodes.
- ▹Transform, Expression, Aggregation, Lookup, Data-Quality
- ▹SQL-Node – leistungsfähige SQL-Abfragen auf einem DB-Connector (Scalar- oder Transform-Modus, Parameter über {{feld}}, MSSQL/MySQL)
- ▹Python-Node in sicherer Sandbox
- ▹AI-Transform-Node – KI-Transformation pro Zeile
- ▹Ziele: CSV/Excel/JSON/XML, Datenbank oder Dataset – mit Replace/Append/Upsert
Pipelines & Scheduler
Pipelines verketten Schritte zu automatisierten Abläufen. Ein Trigger baut per Oberfläche einen Cron-Zeitplan (APScheduler); danach folgen Mapping, Verzweigungen, FTP-Upload, E-Mail oder Business Insights.
Formulare
Mit dem Formular-Builder erstellst du Eingabemasken, die beim Absenden ein Mapping oder eine Pipeline starten. So werden ETL-Abläufe auch für Nicht-Techniker nutzbar – bereitgestellt über das Portal.
Templates & Exporte
Mappings lassen sich als portable Templates exportieren und importieren. Erzeugte Ausgabedateien findest du gebündelt unter Exporte, den Live-Status unter Monitoring.
🤖KI-Assistent
Alle KI-Funktionen laufen über einen lokalen Ollama-Container – es verlassen keine Daten den Server.
Schwebender Assistent
Ein Chat-Fenster auf jeder Seite, das den Kontext der aktuellen Seite kennt (z. B. das offene Mapping oder Dataset). Drei Modi steuern Tempo vs. Tiefe: Schnell, Auto und Analyse.
KI im Editor
- ▹Smart Mapping – automatische Feldzuordnung zwischen Quelle und Ziel
- ▹SQL, Python und Ausdrücke aus einer Beschreibung generieren (oder erklären lassen)
- ▹AI Dataset Wizard – Datasets aus einer Beschreibung vorschlagen
- ▹AI Field Suggest – Formularfelder aus einer Beschreibung
- ▹Fehlermeldungen verständlich erklären
AI Memory
Der Assistent lernt über Sitzungen hinweg dazu: Knowledge (Fachwissen, per Schema-Import befüllbar), Solutions (wiederverwendbare Lösungen) und Corrections (Korrekturen).
🔄Updates
Datenmonster informiert dich in der Oberfläche über neue Versionen. Ein Klick auf den Update-Button lädt die aktuelle Version und aktualisiert die Container. Deine Daten in den Docker-Volumes bleiben dabei erhalten.
Manuelles Update
Alternativ aktualisierst du im Installationsverzeichnis per Kommandozeile:
docker compose pull && docker compose up -d🛠️Troubleshooting
Web-UI nicht erreichbar
Prüfe, ob die Container laufen, und sieh dir die Live-Logs an:
docker compose logs -fBackend antwortet nicht
Der Health-Endpoint des Backends sollte „ok" liefern:
curl http://localhost:8000/api/healthNeustart / Stopp
Datenmonster stoppst du sauber mit:
docker compose down💬Support & Kontakt
Du kommst nicht weiter oder hast Feedback? Wir helfen gerne.
- ▹Kontaktformular: /kontakt
- ▹GitHub: github.com/choldermann/datenmonster-web
- ▹Changelog: /changelog