Référence des variables d'environnement
Le fichier .env se génère via npm run setup (script interactif). Ce document décrit toutes les variables disponibles.
Variables obligatoires
| Variable | Description |
DB_IP | Hôte de la base de données |
DB_PORT | Port (généralement 3306) |
DB_USER | Nom d'utilisateur (ne pas utiliser root) |
DB_PWD | Mot de passe de la base de données |
DB_NAME | Nom de la base de données |
DB_DIALECT | mariadb (ou mysql, postgres, sqlite) |
KEY_TK | Clé de signature JWT pour les tokens API |
KEV | Clé AES (chiffrement des données sensibles) |
KIV | Vecteur d'initialisation AES |
SESSION_SECRET | Secret de session Express |
CSRF_SECRET | Secret de protection CSRF |
API_KEY | Clé d'API (X-KEY-PUNA) pour l'endpoint public |
PORT | Port d'écoute du serveur (ex. 3022) |
NODE_ENV | development, production ou test |
Variables optionnelles
| Variable | Défaut | Description |
SESSION_MAX_AGE | 43200000 (12 h) | Durée de session en millisecondes |
HELMET_STRICT_TRANSPORT | false | Active HSTS (recommandé en production) |
APP_URL | http://localhost:3000 | URL publique de l'application |
ADMIN_LOGIN | (vide) | Login du premier administrateur (requis au 1er démarrage) |
ADMIN_EMAIL | (vide) | Email du premier administrateur (optionnel) |
TOTP_ENABLED | false | Active la fonctionnalité 2FA TOTP globalement |
TOTP_ISSUER | Puna | Nom affiché dans l'application d'authentification |
MCP_ENABLED | false | Active le serveur MCP |
Variables SMTP
Toutes ces variables sont requises pour activer la fonctionnalité mail. Si l'une manque, la réinitialisation de mot de passe est silencieusement désactivée.
| Variable | Exemple |
SMTP_HOST | smtp.example.com |
SMTP_PORT | 587 |
SMTP_USER | user@example.com |
SMTP_PASS | motdepasse |
SMTP_FROM | Puna <noreply@example.com> |
Variables ClamAV
| Variable | Exemple | Description |
CLAMAV_ENABLED | true | Active le scan antivirus |
CLAMAV_HOST | clamav | Hôte ClamAV (nom du service Docker) |
CLAMAV_PORT | 3310 | Port TCP de clamd |