Passer au contenu principal
Toute la configuration passe par des variables d’environnement dans .env. Copie .env.example vers .env et renseigne tes valeurs.

Configuration domaine

VariableRequisDéfautDescription
HOSTOuitale.localnom d’hôte sans protocole (utilisé pour le réseau Docker et les e-mails).
SITE_URLOuihttps://tale.localURL canonique complète avec protocole (utilisée pour liens externes et callbacks d’auth).
BASE_PATHNonchemin de base pour déploiement en sous-chemin (ex. /app). Laisser vide pour un déploiement à la racine.
SITE_URL doit matcher l’URL que voient les utilisateurs, y compris les ports non standard (ex. https://example.com:8443).

TLS/SSL

VariableRequisDéfautDescription
TLS_MODENonselfsignedgestion du certificat : selfsigned, letsencrypt ou external.
TLS_EMAILNone-mail pour les notifications Let’s Encrypt (recommandé en prod).
  • selfsigned : certificats auto-signés pour le dev. Le navigateur avertit.
  • letsencrypt : certificats gratuits de confiance. Exige un domaine public valide et les ports 80/443 joignables.
  • external : TLS géré par un reverse proxy externe. Caddy n’écoute qu’en HTTP.

Secrets de sécurité

VariableRequisDescription
BETTER_AUTH_SECRETOuiclé de signature des sessions d’auth. Générer avec : openssl rand -base64 32.
ENCRYPTION_SECRET_HEXOuiclé de chiffrement pour données sensibles. Générer avec : openssl rand -hex 32.
INSTANCE_SECRETNonsecret d’instance Convex. Générer avec : openssl rand -hex 32.
Important : .env.example livre des secrets d’exemple. Tu dois les remplacer par les tiens avant démarrage, même en dev local.

Fournisseurs IA

La configuration des fournisseurs IA (clés API, base URLs, modèles) passe par des fichiers dans providers/, pas par des variables d’environnement. Voir la page Paramètres > Fournisseurs IA dans l’admin UI, ou édite les JSON directement.
  • providers/<name>.json — config publique (base URL, modèles, tags).
  • providers/<name>.secrets.json — clés API chiffrées par SOPS (auto-générées par tale init).

Base de données

VariableRequisDéfautDescription
DB_PASSWORDOuimot de passe pour la base PostgreSQL auto-hébergée.
POSTGRES_URLNonsurcharge l’URL de connexion auto-générée. Sinon calculée comme postgresql://tale:${DB_PASSWORD}@db:5432.
RAG_DATABASE_URLNonsurcharge l’URL DB pour le service RAG (doit inclure le nom de base, ex. postgresql://...host/tale_knowledge).
CRAWLER_DATABASE_URLNonsurcharge l’URL DB pour le service Crawler (doit inclure le nom de base).
Pour utiliser une instance PostgreSQL externe au lieu du conteneur fourni, voir Utiliser une base externe.

Tracking d’erreurs

VariableRequisDéfautDescription
SENTRY_DSNNonDSN Sentry pour le tracking. Compatible GlitchTip et Bugsink.
Sans valeur, le tracking est désactivé et les erreurs n’apparaissent que dans les logs Docker.

Monitoring

VariableRequisDéfautDescription
METRICS_BEARER_TOKENNonbearer token pour l’accès externe aux métriques Prometheus.
Non défini, les endpoints /metrics/* renvoient 401. Voir Operations pour les détails.

URLs des services

Automatiques dans Docker Compose, surchargeables pour des setups personnalisés :
VariableDéfautDescription
CRAWLER_URLhttp://crawler:8002service Crawler pour le crawling.
RAG_URLhttp://rag:8001service RAG pour l’indexation et la recherche.

Déploiement Docker

VariableRequisDéfautDescription
PULL_POLICYNonalways pour utiliser des images pré-construites depuis GitHub.
VERSIONNontag de version d’image (ex. latest, v1.0.0). Utilisé avec PULL_POLICY=always.

SSO Microsoft Entra ID

Ces variables ne sont nécessaires que si tu configures le SSO via environnement au lieu de l’UI Paramètres > Intégrations.
VariableRequisDescription
AUTH_MICROSOFT_ENTRA_ID_IDNonApplication (client) ID Microsoft Entra ID.
AUTH_MICROSOFT_ENTRA_ID_SECRETNonClient secret Microsoft Entra ID.
AUTH_MICROSOFT_ENTRA_ID_TENANT_IDNonTenant ID Microsoft Entra ID.

Authentification par trusted headers

VariableRequisDescription
TRUSTED_HEADERS_ENABLEDNontrue pour activer l’auth Trusted Headers.
TRUSTED_HEADERS_INTERNAL_SECRETNonsecret partagé pour valider les requêtes Trusted Header (defense-in-depth).
TRUSTED_EMAIL_HEADERNonnom du header e-mail (défaut : Remote-Email).
TRUSTED_NAME_HEADERNonnom du header nom affiché (défaut : Remote-Name).
TRUSTED_ROLE_HEADERNonnom du header rôle (défaut : Remote-Role).
TRUSTED_TEAMS_HEADERNonnom du header équipes (défaut : Remote-Teams).
Voir le guide d’authentification pour configurer les Trusted Headers.
Last modified on April 20, 2026