[Unit] Description=La Voix du Peuple — API Flask After=network.target postgresql.service Requires=postgresql.service [Service] Type=exec User=voixdupeuple Group=voixdupeuple WorkingDirectory=/opt/voix-du-peuple/artifacts/flask-api EnvironmentFile=/opt/voix-du-peuple/.env ExecStart=/opt/voix-du-peuple/.venv/bin/gunicorn \ --workers 4 \ --bind 127.0.0.1:8000 \ --access-logfile /var/log/voix-du-peuple/api-access.log \ --error-logfile /var/log/voix-du-peuple/api-error.log \ --timeout 60 \ app:app Restart=always RestartSec=5 # Sécurité NoNewPrivileges=true PrivateTmp=true ProtectSystem=strict ReadWritePaths=/var/log/voix-du-peuple [Install] WantedBy=multi-user.target