# Configuration du Homelab Automation Dashboard # Copier ce fichier en .env et adapter les valeurs # utiliser le mode de debug DEBUG_MODE=YES # Clé API pour l'authentification (changer en production!) API_KEY=dev-key-12345 # Utilisateur SSH pour Ansible (doit exister sur les hôtes cibles) SSH_USER=automation # Répertoire contenant les clés SSH sur la machine hôte # Sera monté en lecture seule dans le container SSH_KEY_DIR=~/.ssh # Répertoire des logs de tâches (fichiers markdown classés par YYYY/MM/JJ) # Ce répertoire sera monté dans le container et contiendra l'historique # des exécutions de tâches au format markdown # Exemple Windows: C:\Obsidian_doc\SessionsManager\60-TACHES\LOGS # Exemple Linux: /home/user/tasks_logs DIR_LOGS_TASKS=./tasks_logs # Optionnel: Chemin spécifique de la clé privée SSH # SSH_KEY_PATH=/path/to/id_rsa # ===== NOTIFICATIONS NTFY ===== # URL de base du serveur ntfy (self-hosted ou ntfy.sh) NTFY_BASE_URL=http://raspi.8gb.home:8150 # Topic par défaut pour les notifications générales NTFY_DEFAULT_TOPIC=homelab-events # Activer/désactiver les notifications (true/false) NTFY_ENABLED=true # Timeout pour les requêtes HTTP vers ntfy (en secondes) NTFY_TIMEOUT=5 # Types de notifications à envoyer : # - ALL : toutes les notifications (succès, warnings, erreurs) # - ERR : uniquement les erreurs # - WARN : uniquement les warnings (par ex. hôtes DOWN) # - ERR,WARN : erreurs + warnings, mais pas les succès NTFY_MSG_TYPE=ALL # Authentification optionnelle (laisser vide si pas d'auth) # NTFY_USERNAME= # NTFY_PASSWORD= # Ou utiliser un token Bearer # NTFY_TOKEN= # JWT_SECRET_KEY pour l'authentification JWT_SECRET_KEY=votre-clé-secrète-production # JWT_EXPIRE_MINUTES pour la durée de la session JWT_EXPIRE_MINUTES=1440 # 24h par défaut # ===== TERMINAL SSH WEB ===== # Session TTL in minutes (default: 30) TERMINAL_SESSION_TTL_MINUTES=30 # Maximum active sessions per user (default: 3) TERMINAL_MAX_SESSIONS_PER_USER=3 # Idle timeout - sessions without heartbeat for this long are closed (default: 120s) TERMINAL_SESSION_IDLE_TIMEOUT_SECONDS=120 # Heartbeat interval - how often client should send heartbeat (default: 15s) TERMINAL_HEARTBEAT_INTERVAL_SECONDS=15 # GC interval - how often to run garbage collection (default: 30s) TERMINAL_GC_INTERVAL_SECONDS=30 # Port range for ttyd instances (default: 7680-7700) TERMINAL_PORT_RANGE_START=7680 TERMINAL_PORT_RANGE_END=7700 # ttyd bind interface (important for WSL/remote access). Example: eth0 # If omitted, the app defaults to eth0 when WSL is detected. # TERMINAL_TTYD_INTERFACE=eth0 # SSH user for terminal connections (default: automation) TERMINAL_SSH_USER=automation # Path to ttyd binary (default: ttyd - uses PATH) # TTYD_PATH=/usr/bin/ttyd # SSH key path for terminal connections (optional, uses SSH_KEY_PATH if not set) # TERMINAL_SSH_KEY_PATH=/path/to/id_rsa # Command history retention in days TERMINAL_COMMAND_RETENTION_DAYS=30