2.8 KiB
Infrastructure & Operations
🏗️ Konsolidierte Architektur & Web-Anwendungen
Um die Wartbarkeit zu erhöhen, wurden diverse Einzeltools (B2B Marketing Assistant, Market Intelligence, GTM Architect) in eine konsolidierte Docker-Architektur überführt.
Architektur im Überblick
Die Lösung basiert auf einem zentralen Nginx-Gateway (gateway_proxy), das alle Anfragen auf Port 8090 entgegennimmt und an die entsprechenden Container weiterleitet.
- Zentraler & Sicherer Zugriff: Nur ein Port muss extern freigegeben werden.
- Einheitliche Auth: Basic Auth schützt alle internen Tools.
- Routing-Tabelle:
/-> Dashboard/ce/-> Company Explorer/lead/-> Lead Engine/market/-> Market Intelligence- ... (siehe
readme.mdfür vollständige Liste)
Microservice-Pattern
Viele der neuen Apps (GTM Architect, Market Intel) nutzen ein "Self-Contained" Pattern:
- Frontend: Vite/React (gebaut im Dockerfile).
- Backend: Node.js Bridge (
server.cjs), die Python-Skripte orchestriert. - Vorteil: Ein einziger Container pro Tool, der sowohl UI als auch Logik bereitstellt.
🌐 DNS & Connectivity (DuckDNS)
Um eine stabile Erreichbarkeit der Dienste auch bei wechselnden IPs (DynDNS) zu gewährleisten, wurde eine Docker-basierte Lösung implementiert.
- Service:
duckdns(LinuxServer.io Container). - Funktion: Aktualisiert die Domain
floke-ai.duckdns.orgalle 5 Minuten mit der aktuellen öffentlichen IP. - Monitoring: Ein Sidecar-Container
dns-monitorprüft die Auflösung und warnt bei Fehlern.
📂 Daten-Persistenz (Volumes)
Um Datenverlust zu vermeiden und Dateisystem-Berechtigungskonflikte zu umgehen, nutzen alle Dienste benannte Docker-Volumes.
| Volume Name | Dienst / Inhalt |
|---|---|
explorer_db_data |
Company Explorer (SQLite Datenbank) |
connector_db_data |
Connector Queue (Eingehende CRM Events) |
lead_engine_data |
Lead Engine (State & Persistence) |
gtm_architect_data |
GTM Strategien (Projekte) |
b2b_marketing_data |
B2B Marketing Assistant Analysen |
content_engine_data |
Content Engine Projekt-Entwürfe |
market_intel_data |
Market Intelligence Projekte |
competitor_analysis_data |
Competitor Analysis Berichte |
transcription_uploads |
Meeting Assistant (Audio-Uploads) |
🛠️ Port-Mapping (Übersicht)
Die Dienste kommunizieren intern über den Standard-Port des jeweiligen Frameworks (meist 8000, 3000 oder 3005).
| Host-Port | Ziel-Dienst | Routing |
|---|---|---|
| 8090 | gateway_proxy |
/ |
| 8000 | company-explorer |
/ce/ |
| 8501 | lead-engine |
/lead/ |
| 3005 | gtm-architect |
/gtm/ |
| ... | ... | ... |
Siehe auch: DuckDNS Setup (falls vorhanden).