Dans les précédents tutoriels nous avons vu comment installer Node-RED sur Windows, macOS et Raspbian (Raspberry PI). Dans ce tutoriel nous allons installer Node-RED sur Ubuntu 16.04 LTS (Long Term Support) sur un mini PC à base d’Atom. Nous allons installer Node.js, npm (le gestionnaire de paquet de Node.js) et Node-RED.
Sommaire
Installer Node.js et npm
L’installation de Node.js est très simple sur Ubuntu 16.04 LTS car il est inclus dans les dépôts par défaut. Dans un Terminal, exécutez la commande suivante :
sudo apt-get install nodejs-legacy
Cette commande installe Node.js version v4.2.x LTS ce qui signifie que cette version sera maintenue encore 30 mois à partir de la date de publication (release date), c’est à dire le 12 octobre 2015.
Après l’installation, vérifiez la version installée.
node -v
v4.2.6
Node.js utilise un gestionnaire de paquet appelé npm (Node Package Manager). Il permet d’installer et de gérer les packages. Comme Node-RED est une “sur-couche graphique” de Node.js, il est donc nécessaire de l’installer.
sudo apt-get install npm
Une fois l’installation terminée, vérifiez la version. Si la version est retournée sans erreur, vous pouvez poursuivre l’installation de Node-RED.
npm -v
3.5.2
Installer Node-RED sur Ubuntu (16.04 LTS+)
Node-RED s’installe à l’aide du gestionnaire de paquets npm. Nous allons en profiter pour installer le module node-red-admin qui ajoute quelques outils d’administration pour Node-RED.
sudo npm install -g --unsafe-perm node-red node-red-admin
Par défaut, npm installe les paquets dans le répertoire courant. L’option -g permet d’installer les paquets de manière globale, c’est à dire qu’il seront disponibles pour tous les projets Node.js. Dans ce as, ils sont installés dans le répertoire /usr/local/bin
. L’option --unsafe-perm
permet de passer outre les erreurs qui peuvent se produire durant l’installation. Par exemple lorsque certains modules doivent être compilés au moment de l’installation.
Node-RED utilise le port 1880 par défaut. Il faut donc l’autoriser
sudo ufw allow 1880
Et voilà, on peut maintenant démarrer Node-RED en démarrant avec la commande node-red.
Pour y accéder, ouvrez un navigateur internet et saisissez l’URL suivante dans la barre d’adresse http://localhost:1880.
Lancer Node-RED automatiquement au démarrage
Pour pouvoir démarrer automatiquement Node-RED au démarrage d’Ubuntu, nous allons créer un script qui sera lancé par systemd.
Ouvrez un fichier vide nommé node-red.service
sudo nano /etc/systemd/system/node-red.service
Collez le contenu de ce script puis remplacez la clé UTILISATEUR par votre nom d’utilisateur. Enregistrez le fichier avec CTRL+X puis O.
[Unit]
Description=Node-RED
After=syslog.target network.target
[Service]
ExecStart=/usr/local/bin/node-red-pi --max-old-space-size=128 -v
Restart=on-failure
KillSignal=SIGINT
# log output to syslog as 'node-red'
SyslogIdentifier=node-red
StandardOutput=syslog
# non-root user to run as
WorkingDirectory=/home/UTILISATEUR/
User=UTILISATEUR
Group=UTILISATEUR
[Install]
WantedBy=multi-user.target
Quelques explications sur la configuration :
- La première section (Unit) indique que le service doit démarrer une fois que le réseau et le service syslog sont opérationnels.
- La section [service]. ExecStart indique le programme a démarré ainsi que les ressources allouées à son fonctionnement. Restart=on-failure permet de relancer Node-RED en cas de crash
- Les événements seront identifiées dans le journal système (StandardOutput=syslog) avec l’identifiant node-red.
Maintenant que le fichier de configuration est prêt, on indique à systemd qu’il doit l’exécuter au démarrage.
sudo systemctl enable node-red
Démarrons-le manuellement (N’oubliez pas d’arrêter Node-RED si une autre instance est déjà en cours de fonctionnement).
sudo systemctl start node-red
Maintenant que Node-RED fonctionne comme un service, il faut passer par systemd pour l’arrêter manuellement.
sudo systemctl stop node-red
|
Avez-vous aimé cet article ?