Générateur d'unité systemd
Générez un fichier d'unité systemd pour votre service : commande, utilisateur dédié, politique de redémarrage et commandes d'installation.
Comment ça marche
Une unité systemd décrit comment démarrer, arrêter et superviser un service. Le fichier se place dans /etc/systemd/system/mon-app.service.
Bonnes pratiques : exécuter sous un utilisateur dédié non privilégié, définir Restart=on-failure, éviter les secrets dans Environment (utilisez EnvironmentFile avec un fichier en 600), et activer le service avec systemctl enable --now.
Exemples
API Python
Unité complète prête à installer.
| name | nettools-api |
| description | API NetTools |
| exec_start | /opt/nettools/.venv/bin/uvicorn app.main:app --host 127.0.0.1 --port 8000 |
| user | nettools |
| restart | on-failure |
| working_dir | /opt/nettools |
| environment | |
| wanted_by | multi-user.target |
Questions fréquentes
Où placer le fichier d'unité ?
/etc/systemd/system/nom.service, puis systemctl daemon-reload et systemctl enable --now nom.
Comment consulter les journaux ?
journalctl -u nom -f, ou --since '10 min ago' pour un historique proche.
Restart=always est-il une bonne idée ?
Sur un service critique oui, mais il masque les crashs répétés : combinez avec un monitoring des redémarrages (StartLimitBurst).