4.1 KiB
4.1 KiB
Docker Configuration Guide
Table des matières
Configuration des Providers IA
Le fichier .env.docker n'est PAS versionné par Git (.gitignore). Vous devez le créer manuellement sur votre serveur.
Étape 1: Créer le fichier .env.docker
Sur votre serveur Proxmox:
cd /path/to/Keep
cp .env.docker.example .env.docker
nano .env.docker
Étape 2: Configurer selon votre setup
Option A: Ollama dans Docker (service Docker)
NEXTAUTH_URL="http://192.168.1.190:3000"
AI_PROVIDER=ollama
OLLAMA_BASE_URL="http://ollama:11434"
OLLAMA_MODEL="granite4:latest"
Important: Utilisez ollama:11434 (nom du service Docker) PAS localhost:11434
Option B: OpenAI (Cloud)
NEXTAUTH_URL="http://192.168.1.190:3000"
AI_PROVIDER=openai
OPENAI_API_KEY="sk-votre-cle-ici"
Puis dans l'interface admin:
- Configurez Tags Provider → OpenAI
- Configurez Embeddings Provider → OpenAI
- Entrez votre clé API
Option C: Ollama sur l'hôte (hors Docker)
NEXTAUTH_URL="http://192.168.1.190:3000"
AI_PROVIDER=ollama
OLLAMA_BASE_URL="http://192.168.1.190:11434"
OLLAMA_MODEL="granite4:latest"
Utilisez l'IP de votre serveur PAS localhost
Étape 3: Rebuild et redémarrer
docker compose down
docker compose build --no-cache keep-notes
docker compose up -d
Étape 4: Vérifier dans l'interface Admin
- Allez sur http://192.168.1.190:3000/admin/settings
- Section "AI Settings"
- Vous pouvez maintenant changer le provider pour Tags et Embeddings indépendamment
Problèmes fréquents
Erreur: ECONNREFUSED 127.0.0.1:11434
- Problème: Le code essaie d'utiliser
localhostau lieu du service Docker - Solution: Assurez-vous que
.env.dockerexiste avecOLLAMA_BASE_URL="http://ollama:11434"
Le provider ne change pas dans l'admin
- Sauvegardez les modifications dans l'admin
- Rafraîchissez la page (F5)
- Vérifiez "Current value" affichée sous le dropdown
Seul la génération de titres fonctionne
- Vérifiez que le bon provider est sélectionné pour Tags ET Embeddings
- Ce sont 2 providers séparés dans l'interface admin
Configuration du MCP Server
Le MCP Server supporte deux modes de transport:
Mode stdio (défaut) - Pour Claude Desktop, Cline, etc.
Communication via stdin/stdout, idéal pour les clients locaux.
# .env.docker
MCP_MODE="stdio"
Mode SSE (HTTP) - Pour N8N distant, API HTTP
Communication via HTTP Server-Sent Events, accessible sur le réseau.
# .env.docker
MCP_MODE="sse"
MCP_PORT="3001"
Le serveur MCP sera accessible sur http://localhost:3001 (ou http://mcp-server:3001 depuis les autres services Docker).
Endpoints SSE disponibles
GET /- Health checkGET /sse- Connexion SSEPOST /message- Envoi de messagesGET /sessions- Liste des sessions actives
Utilisation avec N8N
- Configurez le MCP en mode SSE:
MCP_MODE="sse" - Redémarrez les services:
docker compose restart mcp-server - Dans N8N, configurez le MCP avec l'URL:
http://memento-mcp:3001/sse
Utilisation avec Claude Desktop (stdio)
- Gardez le mode stdio par défaut:
MCP_MODE="stdio" - Configurez Claude Desktop avec:
{ "mcpServers": { "memento": { "command": "docker", "args": ["exec", "-i", "memento-mcp", "node", "index.js"] } } }
Commandes Docker utiles
Démarrage complet
docker compose up -d
Avec Ollama (optionnel)
docker compose --profile ollama up -d
Rebuild complet
docker compose down
docker compose build --no-cache
docker compose up -d
Voir les logs
# Tous les services
docker compose logs -f
# Service spécifique
docker compose logs -f keep-notes
docker compose logs -f mcp-server
Vérifier l'état des services
docker compose ps
docker compose top
Accéder à un conteneur
docker compose exec keep-notes sh
docker compose exec mcp-server sh