; Gabarit supervisor pour le tableau de bord Django (ASGI/Daphne). ; Alternative optionnelle au service systemd fail2ban-emitter-web.service — ; les deux mécanismes ne doivent jamais gérer le même process en parallèle. ; ; Déployé automatiquement par `sudo ./install.sh install-supervisor` (arrête ; et désactive les services systemd correspondants, installe supervisor, ; substitue les __PLACEHOLDER__ ci-dessous et démarre supervisorctl). ; `sudo ./install.sh uninstall-supervisor` fait le chemin inverse. ; ; Pour un déploiement manuel (sans passer par install.sh) : ; 1. sudo apt-get install supervisor ; 2. sed les __PLACEHOLDER__ ci-dessous (chemin du dépôt, .env, utilisateur) ; 3. cp vers /etc/supervisor/conf.d/fail2ban-emitter-web.conf ; 4. sudo systemctl disable --now fail2ban-emitter-web.service (pas les deux à la fois) ; 5. sudo supervisorctl reread && sudo supervisorctl update ; ; __EMITTER_DIR__ : chemin absolu vers le sous-répertoire emitter/ du dépôt ; (ex. /home/banisher/Fail2banMqttActionBanisher/emitter) ; __ENV_FILE__ : chemin absolu vers le .env à la racine du dépôt ; __EMITTER_USER__: utilisateur système propriétaire du dépôt (ex. banisher) [program:fail2ban-emitter-web] command=/bin/bash -lc 'set -a; source __ENV_FILE__; set +a; exec __EMITTER_DIR__/.venv/bin/daphne -b 127.0.0.1 -p 8050 config.asgi:application' directory=__EMITTER_DIR__ user=__EMITTER_USER__ environment=DJANGO_SETTINGS_MODULE="config.settings.production",PYTHONUNBUFFERED="1" autostart=true autorestart=true stopsignal=TERM stdout_logfile=/var/log/supervisor/fail2ban-emitter-web.log stderr_logfile=/var/log/supervisor/fail2ban-emitter-web.log