mirror of
https://github.com/Memo-2023/mana-monorepo.git
synced 2026-05-14 21:01:08 +02:00
- App display name → Cardecky in mana-apps.ts, MODULE_REGISTRY, alle Docs - Domains: cardecky.mana.how (App), cardecky-api.mana.how (Marketplace API), cardecky.com (Marketing-Landing — cloudflared-route + nginx-Block vorbereitet, DNS muss noch gesetzt werden) - 301-Redirect cards.mana.how → cardecky.mana.how (nginx + cloudflared) für alte Bookmarks; kann nach 6–12 Monaten wieder raus - SPDX license IDs Cards-Personal-Use/Pro-Only-1.0 → Cardecky-* via Drizzle 0001-Migration (DROP CHECK → UPDATE rows → SET DEFAULT → ADD CHECK), inkl. _journal- und 0001_snapshot-Update - In-mana cards-Modul: dezenter Banner zur Standalone-App (GUIDELINES §12), einmal schließbar via localStorage - Docker-CORS-Listen, sso-origins.ts, Prometheus-Target aktualisiert Technische IDs bleiben bewusst: appId 'cards', schema mana_platform.cards.*, Verzeichnis apps/cards/, Package @cards/web, services/cards-server, Env-Vars CARDS_*, UMAMI_WEBSITE_ID_CARDS*, Class CardsEvents — Mana-Konvention (Brand ≠ technischer Identifier). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
543 lines
19 KiB
Markdown
543 lines
19 KiB
Markdown
# Externe Dienste & Self-Hosting-Analyse
|
|
|
|
Dieser Bericht dokumentiert alle externen Dienste im Mana Monorepo und evaluiert Self-Hosting-Alternativen für den Mac Mini Server (M4, 16GB RAM).
|
|
|
|
**Stand:** Januar 2026
|
|
|
|
---
|
|
|
|
## Inhaltsverzeichnis
|
|
|
|
- [Übersicht](#übersicht)
|
|
- [Aktuelle externe Dienste](#aktuelle-externe-dienste)
|
|
- [AI-Dienste](#1-ai-dienste)
|
|
- [Infrastruktur](#2-infrastruktur)
|
|
- [Auth & Payment](#3-auth--payment)
|
|
- [Email](#4-email)
|
|
- [Hosting & CDN](#5-hosting--cdn)
|
|
- [Monitoring](#6-monitoring)
|
|
- [Self-Hosting-Status](#self-hosting-status)
|
|
- [Self-Hosting-Möglichkeiten](#self-hosting-möglichkeiten)
|
|
- [Bildgenerierung (Replicate-Ersatz)](#1-bildgenerierung-replicate-ersatz)
|
|
- [Vision AI (Gemini-Ersatz)](#2-vision-ai-gemini-ersatz)
|
|
- [Email-Service](#3-email-service)
|
|
- [Kosten-Analyse](#kosten-analyse)
|
|
- [Implementierungs-Roadmap](#implementierungs-roadmap)
|
|
- [Nicht ersetzbare Dienste](#nicht-ersetzbare-dienste)
|
|
|
|
---
|
|
|
|
## Übersicht
|
|
|
|
```
|
|
┌─────────────────────────────────────────────────────────────────────────────┐
|
|
│ MANA EXTERNAL SERVICES MAP │
|
|
├─────────────────────────────────────────────────────────────────────────────┤
|
|
│ │
|
|
│ ┌─────────────────────────────────────────────────────────────────────┐ │
|
|
│ │ AI SERVICES │ │
|
|
│ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │
|
|
│ │ │ Replicate│ │OpenRouter│ │ Gemini │ │ Ollama │ │Azure OAPI│ │ │
|
|
│ │ │ (Picture)│ │ (Chat) │ │(Planta, │ │ (Chat) │ │ (Chat) │ │ │
|
|
│ │ │ CLOUD │ │ CLOUD │ │Food) │ │ LOCAL │ │ CLOUD │ │ │
|
|
│ │ └──────────┘ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │ │
|
|
│ └─────────────────────────────────────────────────────────────────────┘ │
|
|
│ │
|
|
│ ┌─────────────────────────────────────────────────────────────────────┐ │
|
|
│ │ INFRASTRUCTURE │ │
|
|
│ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │
|
|
│ │ │PostgreSQL│ │ Redis │ │ MinIO │ │Hetzner S3│ │ │
|
|
│ │ │ LOCAL │ │ LOCAL │ │ LOCAL │ │ CLOUD │ │ │
|
|
│ │ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │ │
|
|
│ └─────────────────────────────────────────────────────────────────────┘ │
|
|
│ │
|
|
│ ┌─────────────────────────────────────────────────────────────────────┐ │
|
|
│ │ AUTH & PAYMENT │ │
|
|
│ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │
|
|
│ │ │Better │ │ Stripe │ │ Google │ │ │
|
|
│ │ │Auth │ │ Payments │ │ OAuth │ │ │
|
|
│ │ │ LOCAL │ │ CLOUD │ │ CLOUD │ │ │
|
|
│ │ └──────────┘ └──────────┘ └──────────┘ │ │
|
|
│ └─────────────────────────────────────────────────────────────────────┘ │
|
|
│ │
|
|
│ ┌─────────────────────────────────────────────────────────────────────┐ │
|
|
│ │ HOSTING & CDN │ │
|
|
│ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ │ │
|
|
│ │ │Cloudflare│ │Cloudflare│ │ Mac Mini │ │ │
|
|
│ │ │ Pages │ │ Tunnel │ │ Server │ │ │
|
|
│ │ │ FREE │ │ FREE │ │ LOCAL │ │ │
|
|
│ │ └──────────┘ └──────────┘ └──────────┘ │ │
|
|
│ └─────────────────────────────────────────────────────────────────────┘ │
|
|
│ │
|
|
└─────────────────────────────────────────────────────────────────────────────┘
|
|
|
|
Legende: LOCAL = Self-hosted | CLOUD = Externer Dienst | FREE = Kostenlos
|
|
```
|
|
|
|
---
|
|
|
|
## Aktuelle externe Dienste
|
|
|
|
### 1. AI-Dienste
|
|
|
|
| Dienst | App(s) | Zweck | API-Key Variable | Geschätzte Kosten |
|
|
|--------|--------|-------|------------------|-------------------|
|
|
| **Replicate** | Picture | Bildgenerierung (Flux, SDXL, SD) | `PICTURE_REPLICATE_API_TOKEN` | €20-100/Monat |
|
|
| **OpenRouter** | Chat | Cloud LLMs (Claude, GPT, Llama, DeepSeek) | `OPENROUTER_API_KEY` | €10-50/Monat |
|
|
| **Google Gemini** | Planta, Food, Cardecky | Vision & Text AI | `GEMINI_API_KEY`, `PLANTA_GEMINI_API_KEY` | €5-20/Monat |
|
|
| **Azure OpenAI** | Chat (Docker) | GPT-4o via Azure | `AZURE_OPENAI_ENDPOINT`, `AZURE_OPENAI_API_KEY` | Optional |
|
|
| **Anthropic** | Mana Games | Claude API | `MANA_GAMES_ANTHROPIC_API_KEY` | Optional |
|
|
| **Ollama** | Chat | Lokale LLMs (Gemma 3, Llama) | `OLLAMA_URL` | ✅ Bereits lokal |
|
|
|
|
### 2. Infrastruktur
|
|
|
|
| Dienst | Typ | Port | Status | Details |
|
|
|--------|-----|------|--------|---------|
|
|
| **PostgreSQL** | Datenbank | 5432 | ✅ Lokal | Docker: `postgres:16-alpine` |
|
|
| **Redis** | Cache/Sessions | 6379 | ✅ Lokal | Docker: `redis:7-alpine` |
|
|
| **MinIO** | Object Storage | 9000/9001 | ✅ Lokal | S3-kompatibel |
|
|
| **Hetzner S3** | Cloud Storage | - | Cloud | Production (~€5/TB/Monat) |
|
|
| **Supabase** | DB/Auth (Legacy) | - | Cloud | Nur noch Legacy-Features |
|
|
|
|
**Konfigurierte MinIO Buckets:**
|
|
- `picture-storage` - AI-generierte Bilder
|
|
- `chat-storage` - User-Uploads
|
|
- `cards-storage` - Card/Deck Assets
|
|
- `plants-storage` - Pflanzenfotos
|
|
- `food-storage` - Mahlzeitenfotos
|
|
- `presi-storage` - Präsentationsfolien
|
|
- `calendar-storage` - Kalender-Anhänge
|
|
- `contacts-storage` - Kontakt-Avatare
|
|
- `storage-storage` - Cloud Drive Dateien
|
|
|
|
### 3. Auth & Payment
|
|
|
|
| Dienst | Zweck | Status | Ersetzbar? |
|
|
|--------|-------|--------|------------|
|
|
| **Better Auth** | Zentrale Authentifizierung (JWT/EdDSA) | ✅ Self-hosted | - |
|
|
| **Stripe** | Payment Processing, Subscriptions | Cloud | ❌ Nein |
|
|
| **Google OAuth** | Social Login (Contacts Import) | Cloud | ❌ Nein |
|
|
|
|
### 4. Email
|
|
|
|
| Dienst | Zweck | Status |
|
|
|--------|-------|--------|
|
|
| **Nodemailer** | SMTP-basierter Email-Versand | Braucht SMTP-Server |
|
|
|
|
**Verwendungszwecke:**
|
|
- Email-Verifizierung (Registrierung)
|
|
- Passwort-Reset
|
|
- Einladungen
|
|
- Benachrichtigungen
|
|
|
|
### 5. Hosting & CDN
|
|
|
|
| Dienst | Zweck | Kosten |
|
|
|--------|-------|--------|
|
|
| **Cloudflare Pages** | Landing Pages Hosting | Kostenlos |
|
|
| **Cloudflare Tunnel** | SSH-Zugang zu Mac Mini | Kostenlos |
|
|
| **Mac Mini Server** | Production Backend | Hardware vorhanden |
|
|
|
|
**Gehostete Landing Pages:**
|
|
- `chat-landing.pages.dev`
|
|
- `picture-landing.pages.dev`
|
|
- `mana-landing.pages.dev`
|
|
- `cards-landing.pages.dev`
|
|
- `quotes-landing.pages.dev`
|
|
|
|
### 6. Monitoring
|
|
|
|
| Dienst | Zweck | Status |
|
|
|--------|-------|--------|
|
|
| **Prometheus** | Metrics Collection | In mana-auth integriert |
|
|
| **Grafana** | Dashboards | Konfigurierbar |
|
|
| **Winston** | Application Logging | In allen NestJS Services |
|
|
| **Umami** | Web Analytics | `UMAMI_APP_SECRET` |
|
|
|
|
---
|
|
|
|
## Self-Hosting-Status
|
|
|
|
### ✅ Bereits selbst gehostet
|
|
|
|
| Service | Technologie | Port | RAM-Verbrauch |
|
|
|---------|-------------|------|---------------|
|
|
| PostgreSQL | Docker | 5432 | ~1GB |
|
|
| Redis | Docker | 6379 | ~256MB |
|
|
| MinIO | Docker | 9000/9001 | ~512MB |
|
|
| Ollama | Native | 11434 | ~4-8GB (je nach Modell) |
|
|
| mana-auth | Docker | 3001 | ~512MB |
|
|
| mana-stt | Native Python | 3020 | ~2-4GB |
|
|
| Chat Backend | Docker | 3002 | ~512MB |
|
|
|
|
### ⚠️ Noch externe Abhängigkeiten
|
|
|
|
| Service | Aktueller Anbieter | Self-Hosting möglich? |
|
|
|---------|-------------------|----------------------|
|
|
| Bildgenerierung | Replicate | ✅ Ja (ComfyUI) |
|
|
| Vision AI | Google Gemini | ✅ Ja (LLaVA) |
|
|
| Cloud LLMs | OpenRouter | ✅ Teilweise (Ollama) |
|
|
| Email-Versand | Nodemailer + ? | ✅ Ja (Postal/useSend) |
|
|
| Payments | Stripe | ❌ Nein |
|
|
| Cloud Storage | Hetzner S3 | ⚠️ Möglich, aber nicht empfohlen |
|
|
|
|
---
|
|
|
|
## Self-Hosting-Möglichkeiten
|
|
|
|
### 1. Bildgenerierung (Replicate-Ersatz)
|
|
|
|
#### Empfehlung: ComfyUI
|
|
|
|
ComfyUI ist die beste Open-Source-Alternative zu Replicate für Bildgenerierung.
|
|
|
|
**Vorteile:**
|
|
- Volle Kontrolle über Modelle
|
|
- Keine API-Kosten
|
|
- Offline-fähig
|
|
- Erweiterbar mit Custom Nodes
|
|
|
|
**Hardware-Anforderungen (Mac Mini M4, 16GB):**
|
|
|
|
| Modell | VRAM/RAM | Qualität | Geschwindigkeit |
|
|
|--------|----------|----------|-----------------|
|
|
| SDXL | 6.5GB | Sehr gut | ~2-3 Min/Bild |
|
|
| SD 1.5 | 4GB | Gut | ~1 Min/Bild |
|
|
| Flux.1 Schnell | 12GB | Exzellent | ~3-4 Min/Bild |
|
|
| Flux.1 Dev | 24GB+ | Beste | ❌ Nicht möglich |
|
|
|
|
**Installation:**
|
|
|
|
```bash
|
|
# ComfyUI installieren
|
|
cd ~/projects
|
|
git clone https://github.com/comfyanonymous/ComfyUI.git
|
|
cd ComfyUI
|
|
|
|
# Python Environment
|
|
python3 -m venv venv
|
|
source venv/bin/activate
|
|
pip install -r requirements.txt
|
|
|
|
# SDXL Modell herunterladen
|
|
mkdir -p models/checkpoints
|
|
cd models/checkpoints
|
|
wget https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/main/sd_xl_base_1.0.safetensors
|
|
|
|
# Server starten (Netzwerkzugriff)
|
|
cd ~/projects/ComfyUI
|
|
python main.py --listen 0.0.0.0 --port 8188
|
|
```
|
|
|
|
**API-Integration:**
|
|
|
|
ComfyUI bietet eine REST API für programmatische Nutzung:
|
|
|
|
```typescript
|
|
// Beispiel: ComfyUI API Call
|
|
const response = await fetch('http://localhost:8188/prompt', {
|
|
method: 'POST',
|
|
headers: { 'Content-Type': 'application/json' },
|
|
body: JSON.stringify({
|
|
prompt: workflowJSON,
|
|
client_id: 'mana'
|
|
})
|
|
});
|
|
```
|
|
|
|
**Ressourcen:**
|
|
- [ComfyUI GitHub](https://github.com/comfyanonymous/ComfyUI)
|
|
- [Mac M4 Setup Guide](https://medium.com/@tchpnk/comfyui-on-apple-silicon-from-scratch-2025-9facb41c842f)
|
|
- [ComfyUI on M4 Mac Mini](https://lilys.ai/en/notes/comfyui-20260115/comfyui-m4-mac-mini-worth-it)
|
|
|
|
---
|
|
|
|
### 2. Vision AI (Gemini-Ersatz)
|
|
|
|
#### Empfehlung: LLaVA via Ollama
|
|
|
|
LLaVA (Large Language and Vision Assistant) kann Gemini Vision für die meisten Use-Cases ersetzen.
|
|
|
|
**Use-Cases in Mana:**
|
|
- **Planta:** Pflanzenidentifikation
|
|
- **Food:** Lebensmittelerkennung, Nährwertschätzung
|
|
|
|
**Installation:**
|
|
|
|
```bash
|
|
# LLaVA 13B (beste Qualität für 16GB RAM)
|
|
ollama pull llava:13b
|
|
|
|
# Oder LLaVA 7B (schneller, weniger RAM)
|
|
ollama pull llava:7b
|
|
```
|
|
|
|
**Qualitätsvergleich:**
|
|
|
|
| Modell | RAM | Genauigkeit vs Gemini | Geschwindigkeit |
|
|
|--------|-----|----------------------|-----------------|
|
|
| LLaVA 13B | ~10GB | ~80% | Mittel |
|
|
| LLaVA 7B | ~6GB | ~70% | Schnell |
|
|
| Gemini Vision | Cloud | 100% (Referenz) | Sehr schnell |
|
|
|
|
**API-Nutzung:**
|
|
|
|
```bash
|
|
# Bild analysieren
|
|
curl http://localhost:11434/api/generate -d '{
|
|
"model": "llava:13b",
|
|
"prompt": "Was ist auf diesem Bild zu sehen?",
|
|
"images": ["base64-encoded-image"]
|
|
}'
|
|
```
|
|
|
|
**Alternative: Qwen2-VL**
|
|
|
|
Für bessere OCR und Dokumentenverarbeitung:
|
|
|
|
```bash
|
|
ollama pull qwen2-vl:7b
|
|
```
|
|
|
|
---
|
|
|
|
### 3. Email-Service
|
|
|
|
#### Option A: Postal (Empfohlen für hohe Volumen)
|
|
|
|
Postal ist ein vollständiger Mail Transfer Agent mit Web-UI.
|
|
|
|
**Features:**
|
|
- REST API
|
|
- Delivery Tracking
|
|
- Bounce Handling
|
|
- Webhooks
|
|
- Multi-Domain Support
|
|
|
|
**Installation (Docker):**
|
|
|
|
```yaml
|
|
# docker-compose.postal.yml
|
|
version: '3'
|
|
services:
|
|
postal:
|
|
image: ghcr.io/postalserver/postal:latest
|
|
ports:
|
|
- "25:25"
|
|
- "5000:5000"
|
|
volumes:
|
|
- postal-data:/data
|
|
environment:
|
|
- POSTAL_WEB_HOSTNAME=mail.mana.how
|
|
```
|
|
|
|
**Ressourcen:**
|
|
- [Postal GitHub](https://github.com/postalserver/postal)
|
|
- [Postal Docs](https://docs.postalserver.io/)
|
|
|
|
#### Option B: useSend (Modern, AWS SES Backend)
|
|
|
|
Für einfachere Setups mit AWS SES als Delivery-Backend.
|
|
|
|
**Features:**
|
|
- Open Source
|
|
- Self-hostable
|
|
- AWS SES für Delivery (günstig: ~$0.10/1000 Emails)
|
|
- Dashboard für Analytics
|
|
|
|
**Ressourcen:**
|
|
- [useSend GitHub](https://github.com/usesend/useSend)
|
|
|
|
#### Option C: Mailpit (Nur Development)
|
|
|
|
Für lokale Entwicklung ohne echten Email-Versand:
|
|
|
|
```bash
|
|
docker run -d --name mailpit \
|
|
-p 1025:1025 \
|
|
-p 8025:8025 \
|
|
axllent/mailpit
|
|
```
|
|
|
|
Web-UI: http://localhost:8025
|
|
|
|
---
|
|
|
|
## Kosten-Analyse
|
|
|
|
### Aktuelle monatliche Kosten (geschätzt)
|
|
|
|
| Dienst | Nutzung | Kosten/Monat |
|
|
|--------|---------|--------------|
|
|
| Replicate | ~500 Bilder | €20-50 |
|
|
| OpenRouter | ~1M Tokens | €10-30 |
|
|
| Google Gemini | ~10K Requests | €5-15 |
|
|
| Hetzner S3 | ~50GB | €5 |
|
|
| Cloudflare | Unbegrenzt | €0 |
|
|
| **Gesamt** | | **€40-100** |
|
|
|
|
### Nach vollständigem Self-Hosting
|
|
|
|
| Dienst | Lösung | Kosten/Monat |
|
|
|--------|--------|--------------|
|
|
| Bildgenerierung | ComfyUI (lokal) | €0 |
|
|
| Vision AI | LLaVA (lokal) | €0 |
|
|
| LLMs | Ollama (lokal) | €0 |
|
|
| Email | Postal + SES | ~€2 |
|
|
| Storage | Hetzner S3 (behalten) | €5 |
|
|
| Strom | Mac Mini (~50W) | ~€5 |
|
|
| **Gesamt** | | **~€12** |
|
|
|
|
### Ersparnis
|
|
|
|
| Szenario | Monatlich | Jährlich |
|
|
|----------|-----------|----------|
|
|
| Aktuell | €40-100 | €480-1200 |
|
|
| Self-Hosted | ~€12 | ~€144 |
|
|
| **Ersparnis** | **€28-88** | **€336-1056** |
|
|
|
|
---
|
|
|
|
## Implementierungs-Roadmap
|
|
|
|
### Phase 1: Sofort umsetzbar (0-2 Wochen)
|
|
|
|
| Aufgabe | Priorität | Aufwand | Ersparnis |
|
|
|---------|-----------|---------|-----------|
|
|
| ComfyUI installieren | Hoch | 2h | €20-50/Monat |
|
|
| LLaVA für Vision | Hoch | 1h | €5-15/Monat |
|
|
| Mailpit für Dev | Mittel | 30min | - |
|
|
|
|
**Skript für Phase 1:**
|
|
|
|
```bash
|
|
#!/bin/bash
|
|
# scripts/mac-mini/setup-self-hosted-ai.sh
|
|
|
|
echo "=== Installing ComfyUI ==="
|
|
cd ~/projects
|
|
git clone https://github.com/comfyanonymous/ComfyUI.git
|
|
cd ComfyUI
|
|
python3 -m venv venv
|
|
source venv/bin/activate
|
|
pip install -r requirements.txt
|
|
|
|
echo "=== Downloading SDXL ==="
|
|
mkdir -p models/checkpoints
|
|
cd models/checkpoints
|
|
wget -q https://huggingface.co/stabilityai/stable-diffusion-xl-base-1.0/resolve/main/sd_xl_base_1.0.safetensors
|
|
|
|
echo "=== Installing LLaVA ==="
|
|
ollama pull llava:13b
|
|
|
|
echo "=== Done! ==="
|
|
echo "Start ComfyUI: cd ~/projects/ComfyUI && python main.py --listen 0.0.0.0 --port 8188"
|
|
echo "LLaVA ready at: http://localhost:11434"
|
|
```
|
|
|
|
### Phase 2: Bei Bedarf (2-4 Wochen)
|
|
|
|
| Aufgabe | Auslöser | Aufwand |
|
|
|---------|----------|---------|
|
|
| Postal für Emails | Email-Volumen > 1000/Monat | 4h |
|
|
| Umami self-hosted | Analytics benötigt | 2h |
|
|
| Mehr LLM-Modelle | Qualitätsanforderungen | 1h |
|
|
|
|
### Phase 3: Hardware-Upgrade nötig
|
|
|
|
| Aufgabe | Anforderung | Hardware |
|
|
|---------|-------------|----------|
|
|
| Flux.1 Dev | 24GB+ RAM | Mac Mini M4 Pro (32GB+) |
|
|
| Größere LLMs (70B) | 48GB+ RAM | Mac Studio (64GB+) |
|
|
| Multi-GPU Setup | Parallel Inference | Externe GPU |
|
|
|
|
---
|
|
|
|
## Nicht ersetzbare Dienste
|
|
|
|
Diese Dienste können/sollten **nicht** selbst gehostet werden:
|
|
|
|
| Dienst | Grund |
|
|
|--------|-------|
|
|
| **Stripe** | PCI-DSS Compliance, Haftung, Aufwand |
|
|
| **Google OAuth** | Benötigt Google API, kein Ersatz |
|
|
| **Cloudflare** | DDoS-Schutz, CDN nicht selbst replizierbar |
|
|
| **Hetzner S3** | Günstiger als eigene Storage-Infra, Redundanz |
|
|
|
|
---
|
|
|
|
## Anhang: Environment Variables Übersicht
|
|
|
|
### AI-Dienste
|
|
|
|
```env
|
|
# Replicate (Picture App)
|
|
PICTURE_REPLICATE_API_TOKEN=r8_xxx
|
|
|
|
# OpenRouter (Chat)
|
|
OPENROUTER_API_KEY=sk-or-v1-xxx
|
|
|
|
# Google Gemini (Planta, Food, Cardecky)
|
|
GEMINI_API_KEY=AIza...
|
|
PLANTA_GEMINI_API_KEY=AIza...
|
|
FOOD_GEMINI_API_KEY=AIza...
|
|
MANA_GAMES_GOOGLE_GENAI_API_KEY=AIza...
|
|
|
|
# Ollama (Local - bereits konfiguriert)
|
|
OLLAMA_URL=http://localhost:11434
|
|
OLLAMA_TIMEOUT=120000
|
|
|
|
# Azure OpenAI (Optional)
|
|
AZURE_OPENAI_ENDPOINT=https://xxx.openai.azure.com
|
|
AZURE_OPENAI_API_KEY=xxx
|
|
```
|
|
|
|
### Infrastruktur
|
|
|
|
```env
|
|
# PostgreSQL
|
|
DATABASE_URL=postgresql://mana:devpassword@localhost:5432/{app}
|
|
|
|
# Redis
|
|
REDIS_URL=redis://localhost:6379
|
|
|
|
# MinIO (Local)
|
|
S3_ENDPOINT=http://localhost:9000
|
|
S3_ACCESS_KEY=minioadmin
|
|
S3_SECRET_KEY=minioadmin
|
|
|
|
# Hetzner S3 (Production)
|
|
S3_ENDPOINT=https://fsn1.your-objectstorage.com
|
|
S3_REGION=fsn1
|
|
```
|
|
|
|
### Auth & Payment
|
|
|
|
```env
|
|
# Mana Auth
|
|
MANA_AUTH_URL=http://localhost:3001
|
|
|
|
# Stripe
|
|
STRIPE_SECRET_KEY=sk_live_xxx
|
|
STRIPE_PUBLISHABLE_KEY=pk_live_xxx
|
|
STRIPE_WEBHOOK_SECRET=whsec_xxx
|
|
|
|
# Google OAuth (Contacts)
|
|
CONTACTS_GOOGLE_CLIENT_ID=xxx.apps.googleusercontent.com
|
|
CONTACTS_GOOGLE_CLIENT_SECRET=xxx
|
|
```
|
|
|
|
---
|
|
|
|
## Weiterführende Dokumentation
|
|
|
|
- [LOCAL_DEVELOPMENT.md](./LOCAL_DEVELOPMENT.md) - Lokale Entwicklungsumgebung
|
|
- [LOCAL_LLM_MODELS.md](./LOCAL_LLM_MODELS.md) - Verfügbare lokale LLM-Modelle
|
|
- [LOCAL_STT_MODELS.md](./LOCAL_STT_MODELS.md) - Speech-to-Text Modelle
|
|
- [MAC_MINI_SERVER.md](./MAC_MINI_SERVER.md) - Mac Mini Server Dokumentation
|
|
- [SELF-HOSTING-GUIDE.md](./SELF-HOSTING-GUIDE.md) - VPS Self-Hosting Guide
|
|
- [DOCKER_GUIDE.md](./DOCKER_GUIDE.md) - Docker Konfiguration
|
|
|
|
---
|
|
|
|
*Zuletzt aktualisiert: Januar 2026*
|