Supervisor : C’est Python qui gère vos services
Supervisor est un logiciel libre de manipulation des services. En clair il permet de lancer et superviser des services sans passer par des scripts d’init, d’upstart ou de systemd.
Il est écrit en Python, installable sur toutes les plateformes *n*x.
Je l’avais rencontré quand je travaillais sur Docker car il est très adapté à ce contexte : Léger, facilement paramétrable.
Je finis mon éloge en ajoutant que la documentation est bien faite, ce qui ne gâche rien.
Bon, ça y est, convaincu ? Allez, c’est parti !
Pour la version packagée :
apt-get update apt-get install supervisor
Pour une version plus à jour :
apt-get install python-pip pip install supervisor service supervisor restart
Un exemple avec le projet en Flask :
Créer le fichier de configuration de votre service dans /etc/supervisor/conf.d/flask.conf :
[supervisord] nodaemon=true [program:flask] command=/usr/bin/python /projet/hello.py stdout_logfile=/var/log/supervisor/%(program_name)s.log stderr_logfile=/var/log/supervisor/%(program_name)s.log autorestart=true
Attention si vous travaillez dans Docker, il faut en faire un petit peu plus :
mkdir /var/log/supervisor
Et puis :
service supervisor restart
Simple mais bien pratique !