- Structure complète du projet - Docker compose de production - Documentation organisée par thèmes - Guides d'installation et configuration - Section dépannage détaillée - Journal historique
5.7 KiB
🐳 Services et Ports
Tableau récapitulatif
| Service | Hôte | Port | Image | Description |
|---|---|---|---|---|
| Open WebUI | effi-server | 3000 | ghcr.io/open-webui/open-webui:main |
Interface IA principale |
| Qdrant | effi-server | 6333 | qdrant/qdrant:latest |
Base de données vectorielle |
| CouchDB | effi-server | 5984 | couchdb:3.3 |
Backend Obsidian LiveSync |
| n8n | effi-server | 5678 | docker.n8n.io/n8nio/n8n:latest |
Automatisation workflows |
| mcpo | effi-server | 8000 | ghcr.io/open-webui/mcpo:main |
Proxy MCP pour outils |
| wol-proxy | effi-server | 3011 | Build local | Wake-on-LAN + Proxy Ollama |
| pipelines | effi-server | 9099 | ghcr.io/open-webui/pipelines:main |
Middleware mémoire mem0 |
| speaches | folzo-Corp | 8200 | speaches:rocm-ct2 (build local) |
STT Whisper avec ROCm |
| openedai-speech | folzo-Corp | 8100 | ghcr.io/matatonic/openedai-speech |
TTS Piper/XTTS |
| Ollama | folzo-Corp | 11434 | Installation native | LLM (qwen2.5:14b) |
| Obsidian | effi-server | 3100 | lscr.io/linuxserver/obsidian:latest |
Interface Obsidian web |
Description détaillée
Open WebUI (Port 3000)
Rôle : Interface utilisateur principale pour interagir avec l'IA
Fonctionnalités :
- Chat textuel avec le LLM
- Support vocal (STT/TTS)
- Gestion des conversations
- Upload de documents (RAG)
- Administration système
Configuration clé :
environment:
- OLLAMA_BASE_URL=http://host.docker.internal:3011
- VECTOR_DB=qdrant
- QDRANT_URI=http://qdrant:6333
- ENABLE_MEMORIES=true
Qdrant (Port 6333)
Rôle : Stockage vectoriel pour le RAG (Retrieval Augmented Generation)
Utilisation :
- Indexation des documents uploadés
- Recherche sémantique
- Embeddings via
bge-m3:latest
Endpoints :
- API REST :
http://192.168.1.27:6333 - gRPC :
http://192.168.1.27:6334
CouchDB (Port 5984)
Rôle : Base de données NoSQL pour Obsidian LiveSync
Fonctionnalités :
- Synchronisation temps réel des notes Obsidian
- Multi-device (mobile, desktop, web)
- Résolution de conflits intégrée
Initialisation (premier démarrage) :
curl -X PUT http://master:MOT_DE_PASSE@192.168.1.27:5984/_users
curl -X PUT http://master:MOT_DE_PASSE@192.168.1.27:5984/_replicator
curl -X PUT http://master:MOT_DE_PASSE@192.168.1.27:5984/obsidian-livesync
n8n (Port 5678)
Rôle : Plateforme d'automatisation de workflows
Cas d'usage :
- Workflows d'intégration avec Home Assistant
- Automatisations basées sur le calendrier
- Webhooks pour notifications
- Traitement de données
Authentification : Basic Auth configurée via variables d'environnement
mcpo (Port 8000)
Rôle : Proxy pour le protocole MCP (Model Context Protocol)
Fonctionnalités :
- Interface entre OpenWebUI et outils externes
- Exécution de commandes système
- Intégration avec Obsidian MCP
Configuration :
Fichier ~/effi/mcpo-config/config.json :
{
"mcpServers": {}
}
wol-proxy (Port 3011)
Rôle : Wake-on-LAN + Proxy vers Ollama
Fonctionnement :
- Intercepte les requêtes vers Ollama
- Envoie un Magic Packet si le PC est éteint
- Attend le démarrage (timeout: 60s)
- Proxy la requête vers Ollama
Variables d'environnement :
TARGET_HOST: IP du PC GamingTARGET_MAC: Adresse MAC pour WoLBROADCAST_IP: IP de broadcast
pipelines (Port 9099)
Rôle : Middleware pour les filtres OpenWebUI
Utilisation actuelle :
- Intégration mem0 pour mémoire avancée
- Traitement des messages entrants/sortants
speaches (Port 8200)
Rôle : Service STT (Speech-to-Text)
Caractéristiques :
- Modèle :
deepdml/faster-whisper-large-v3-turbo-ct2 - Accélération : ROCm (GPU AMD)
- Langue : Français forcé
- Format : Compatible API OpenAI
Build personnalisé :
- Nécessite CTranslate2 compilé pour gfx1100
- Voir guide dépannage ROCm
openedai-speech (Port 8100)
Rôle : Service TTS (Text-to-Speech)
Voix disponibles :
tts-1: Piper (CPU, rapide) - Voix FR :fr_FR-upmc-mediumtts-1-hd: XTTS (GPU, qualité) - Voix clones
Configuration :
Fichier ~/openedai-speech/tts-config/config.yaml
Ollama (Port 11434)
Rôle : Serveur LLM
Modèles installés :
qwen2.5:14b: LLM principal d'Effibge-m3:latest: Modèle d'embeddings pour RAGqwen2.5:3b: LLM léger pour filtres mémoire
Commandes utiles :
# Lister les modèols
ollama list
# Télécharger un modèle
ollama pull qwen2.5:14b
# Vérifier le statut
curl http://localhost:11434/api/tags
Obsidian Server (Port 3100)
Rôle : Interface web Obsidian 24/7
Utilisation :
- Accès aux notes depuis n'importe où
- Intégration MCP pour modification automatique
- Interface graphique complète
Note : Nécessite shm_size: 1gb pour la stabilité
Dépendances entre services
open-webui
├──► qdrant (pour RAG)
├──► wol-proxy (pour Ollama)
└──► mcpo (pour outils externes)
n8n
└──► Peut appeler tous les services via API
Obsidian (mobile/desktop)
└──► CouchDB (synchronisation)
Ressources système
| Service | CPU | RAM | Stockage |
|---|---|---|---|
| Open WebUI | Faible | ~500 MB | ~1 GB (DB SQLite) |
| Qdrant | Moyen | ~1 GB | Variable (vecteurs) |
| CouchDB | Faible | ~200 MB | Taille des notes |
| n8n | Variable | ~500 MB | Workflows |
| speaches | Élevé (GPU) | ~4 GB VRAM | ~3 GB (modèles) |
| openedai-speech | Moyen | ~2 GB VRAM | ~2 GB (voix) |
| Ollama | Élevé (GPU) | ~10 GB VRAM | ~9 GB (qwen2.5:14b) |