Home > Laisser tourner un programme NodeJS en arrière-plan

Laisser tourner un programme NodeJS en arrière-plan

C’est bon, vous avez votre programme sous Nodejs qui est fini ! Vous pourrez le lancer avec la commande node index.js sauf que quand vous fermerez votre terminal, votre programme s’arrête avec lui. Nous allons voir comment remédier à ce problème

Remédier à ce problème

Pour remédier à ce problème, nous allons utiliser un module NPM nommé PM2. Ce superbe module vous permettra de « daemoniser » notre programme pour qu’il tourne en arrière-plan. Il redémarre automatiquement votre application si elle crash. Pratique non ?

Installation

Pour installer ce module, il faudra taper la commande npm install pm2 -g dans votre terminal pour l’installer sur tout votre système et pas seulement dans un programme.

Et…. c’est bon ! Si vous n’avez pas de messages d’erreurs, vous pouvez passer à la suite

Utilisation

Maintenant que c’est installé, nous pouvons l’utiliser avec la commande pm2. Aussi simple que ça…

Pour lancer votre application, déplacez-vous dans son dossier et tapez la commande pm2 start index.js -n MonSuperProgramme

Si on devait traduire cette commande en français ça donnerait

Démarre mon script nommé index.js avec le nom MonSuperProgramme dans la liste

PM2 possède d’autres commandes comme :

CommandeDescription
pm2 listAffiche la liste des programmes en cours d’exécution
pm2 show [NOM DU PROGRAMME]Affiche les informations d’une application
pm2 log (NOM DU PROGRAMME)Affiche les logs de PM2 ou d’un programme si spécifié
pm2 stop [NOM DU PROGRAMME]Stoppe l’exécution d’un programme
pm2 delete [NOM DU PROGRAMME]Stoppe un programme et le supprime de la liste
pm2 restart [NOM DU PROGRAMME]Redémarre un programme

PM2 possède aussi une version PRO et ENTREPRISE payante mais la version gratuite suffit amplement pour nous. Si vous voulez tester la version PRO gratuitement pendant 14 jours, tapez la commande pm2 plus. La version PRO offre une interface web.

Conclusion

Grâce à PM2, votre application est toujours en ligne ! Sachez que je n’ai pas dit toutes les commandes de cet outil car il y en a beaucoup. Leur documentation est beaucoup plus complète à ce sujet.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.