Aller au contenu principal

Configuration de Chatbotaurus

Chatbotaurus utilise des fichiers de configuration pour gerer les parametres du backend, du frontend et de l'infrastructure. La configuration principale se fait via des fichiers .env et des manifestes Podman.

Fichiers de configuration

FichierEmplacementRole
.envRacine du projetVariables d'environnement backend
.env.localpackages/new-ui/Variables d'environnement frontend
.env.stagingRacine du projetConfiguration staging (VPS)
catalog.yamlcontainers/mcp-catalog/Catalogue des 38 serveurs MCP EU
00-core-pods.yamlkubernetes/podman-local/Services core Podman
01-mgaas-pods.yamlkubernetes/podman-local/Services MGaaS Podman

Configuration backend

Le backend est configure via des variables d'environnement dans le fichier .env :

# Base de donnees
DATABASE_HOST=chatbotaurus-postgres
DATABASE_PORT=5432
DATABASE_NAME=chatbotaurus
DATABASE_USER=chatbotaurus

# Ollama (LLM local)
OLLAMA_BASE_URL=http://chatbotaurus-ollama:11434
OLLAMA_MODEL=qwen3:8b
OLLAMA_DRAFT_MODEL=tomng/nanbeige4.1:3b
OLLAMA_EMBEDDING_MODEL=qwen3-embedding:0.6b

# Qdrant (vecteurs)
QDRANT_URL=http://chatbotaurus-qdrant:6333

# Valkey (cache)
VALKEY_HOST=chatbotaurus-valkey
VALKEY_PORT=6379

# Keycloak (authentification)
KEYCLOAK_URL=http://chatbotaurus-keycloak:8180
KEYCLOAK_REALM=chatbotaurus

# Vault (secrets)
VAULT_ADDR=http://chatbotaurus-vault:8200
Secrets

Ne stockez jamais de mots de passe ou cles API directement dans les fichiers .env en production. Utilisez Vault (chatbotaurus-vault:8200) pour la gestion des secrets.

Configuration frontend

Le frontend Next.js utilise des variables prefixees par NEXT_PUBLIC_ :

# packages/new-ui/.env.local
NEXT_PUBLIC_API_URL=http://localhost:3000
NEXT_PUBLIC_KEYCLOAK_URL=http://localhost:8180
NEXT_PUBLIC_KEYCLOAK_REALM=chatbotaurus
NEXT_PUBLIC_KEYCLOAK_CLIENT_ID=chatbotaurus-ui

Catalogue MCP (catalog.yaml)

Le fichier containers/mcp-catalog/catalog.yaml definit les serveurs MCP disponibles :

servers:
odoo-eu:
name: "Odoo EU"
image: "registry.chatbotaurus.eu/mcp-odoo-eu:latest"
port: 8812
health_check:
path: /web/health
interval: 30s
eu_compliance: true

profiles:
starter:
servers: [odoo-eu, n8n-eu, matomo-eu, calcom-eu, cryptpad-eu]
business:
servers: [odoo-eu, n8n-eu, matomo-eu, calcom-eu, cryptpad-eu, jitsi-eu, ...]
enterprise:
servers: all

eu_compliance:
gaia_x: true
rgpd: true
nis2: true

Priorite de configuration

Les parametres sont appliques dans cet ordre de priorite :

  1. Variables d'environnement systeme (priorite haute)
  2. Fichier .env.staging ou .env.production
  3. Fichier .env (priorite basse)

Mise a jour de la configuration

Apres modification des fichiers de configuration :

  • Backend : redemarrez le serveur (pnpm build && node start-direct.js)
  • Frontend : redemarrez le serveur de dev (pnpm dev)
  • Infrastructure : redeployez les conteneurs (.\scripts\deploy-podman-kube.ps1)

Voir aussi