Files
Brancheneinstufung2/docs/INFRASTRUCTURE.md

69 lines
2.8 KiB
Markdown

# 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.md` fü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.org` alle 5 Minuten mit der aktuellen öffentlichen IP.
* **Monitoring:** Ein Sidecar-Container `dns-monitor` prü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](./duckdns_setup.md) (falls vorhanden).