Cours:Node : Différence entre versions

De troyesGEII
Aller à : navigation, rechercher
(Page créée avec « <center> '''<big>NodeJS et Node-Red : aides</big>''' </center> == Travail == == Mettre à jour Node.js == La version de node.js installé n'est pas à jour, il est don... »)
 
 
(6 révisions intermédiaires par le même utilisateur non affichées)
Ligne 1 : Ligne 1 :
 
<center>
 
<center>
'''<big>NodeJS et Node-Red : aides</big>'''
+
'''<big>Mosquitto, NodeJS et Node-Red : aides</big>'''
 
</center>
 
</center>
  
== Travail ==  
+
== Installer Mosquitto et lancer un broker MQTT ==
 +
 
 +
Avec un OS Windows :
 +
# Aller sur https://mosquitto.org/download/ pour télécharger l'installateur Mosquitto
 +
# L'exécuter. Le dossier d'installation est <code>C:\Program Files (x86)\mosquitto</code>
 +
# Deux options, avec ou sans l'installation comme service :
 +
## Sans : dans le dossier d'installation, lancer le broker avec la commande<source>
 +
C:\Program Files (x86)\mosquitto> .\mosquitto.exe
 +
</source>
 +
## Avec : rien à faire, normalement le service se lance tout seul. Au pire, lancer le service avec la commande<source>
 +
> net start mosquitto</source>
 +
# C'est tout ! Vous avez un broker qui tourne sur votre machine, atteignable sur la boucle locale d'IP 127.0.0.1
 +
 
 +
== Installer Node.js en local (linux) ==
 +
 
 +
Si Node.js n'est pas installé, il est possible de l'installer en local, c'est à dire dans le dossier utilisateur et sans les droits d'administrateur. Voici la procédure ([https://dev.to/hasidicdevs/how-to-install-nodejs-as-a-non-root-user-using-nvm-a-step-by-step-guide-424e référence]) :
 +
# Ouvrir un terminal
 +
# Télécharger le script d'installation de nvm (gestionnaire de versions Node.js) et l'exécuter : <source>
 +
>> wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
 +
</source>
 +
# Activer cette installation : <source>
 +
>> source ~/.bashrc
 +
</source> (ou  bien fermer le terminal et en ouvrir un nouveau).
 +
# Vérifier que nvm est installé : <source>
 +
>> nvm --version
 +
</source>
 +
# Afficher les versions disponibles de Node.js : <source>
 +
>> nvm ls-remote
 +
</source>
 +
# Installer la version souhaitée de Node.js, en général la dernière (23.3.0 à ce jour) : <source>
 +
>> nvm install 23.3.0
 +
</source>
 +
 
 +
== Travailler proprement  ==
 +
 
 +
Le principe général de travail avec Node.js est de créer localement un module qui correspond au travail que l'on souhaite effectuer :
 +
# Créer un dossier destiné à contenir le module (par exemple, et pour illustrer <code>monAppli</code> <source>
 +
c:> mkdir monAppli
 +
</source>
 +
# Dans un terminal, aller dans ce dossier et initialiser le module avec <code>npm init</code> : <source>
 +
c:> cd monAppli
 +
c:\monAppli> npm init
 +
</source>
 +
# Renseigner les différents champs demandés : dont le nom du package (par défaut le nom du dossier), le nom du fichier source principal (par défaut <code>index.js</code>. Il est possible de laisser tout par défaut. Un fichier <code>package.json</code> est alors créé, configurant le package
 +
# Installer localement les dépendances, ie les packages nécessaire au projet. Par exemple : <source>
 +
c:\monAppli> npm install mqtt
 +
</source> Ces dépendances sont téléchargées et installées dans le dossier <code>node_modules</code>, et le fichier <code>package.json</code> est actualisé pour indiquer ces dépendances.
 +
# Créer le fichier source principal (par défaut <code>index.js</code>) et écrire son contenu
 +
# L'exécuter par <source>
 +
c:\monAppli> node index.js
 +
</source>
 +
 
  
 
== Mettre à jour Node.js ==
 
== Mettre à jour Node.js ==
Ligne 27 : Ligne 78 :
 
> const m = require("mqtt");
 
> const m = require("mqtt");
 
> const client = m.connect("mqtt://10.98.35.245");
 
> const client = m.connect("mqtt://10.98.35.245");
 +
</source>
 +
 +
== Installer NodeRed ==
 +
 +
cf https://nodered.org/docs/getting-started/local
 +
 +
Sur les PC de l'IUT :
 +
# Mettre à jour Node.js : en téléchargeant l'installateur depuis https://nodejs.org/en, et en l'exécutant.
 +
# dans une invite de commande <code>cmd</code> :
 +
<source>
 +
npm install -g --unsafe-perm node-red
 
</source>
 
</source>

Version actuelle datée du 28 janvier 2025 à 15:31

Mosquitto, NodeJS et Node-Red : aides

Installer Mosquitto et lancer un broker MQTT

Avec un OS Windows :

  1. Aller sur https://mosquitto.org/download/ pour télécharger l'installateur Mosquitto
  2. L'exécuter. Le dossier d'installation est C:\Program Files (x86)\mosquitto
  3. Deux options, avec ou sans l'installation comme service :
    1. Sans : dans le dossier d'installation, lancer le broker avec la commande
      C:\Program Files (x86)\mosquitto> .\mosquitto.exe
    2. Avec : rien à faire, normalement le service se lance tout seul. Au pire, lancer le service avec la commande
      > net start mosquitto
  4. C'est tout ! Vous avez un broker qui tourne sur votre machine, atteignable sur la boucle locale d'IP 127.0.0.1

Installer Node.js en local (linux)

Si Node.js n'est pas installé, il est possible de l'installer en local, c'est à dire dans le dossier utilisateur et sans les droits d'administrateur. Voici la procédure (référence) :

  1. Ouvrir un terminal
  2. Télécharger le script d'installation de nvm (gestionnaire de versions Node.js) et l'exécuter :
    >> wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
  3. Activer cette installation :
    >> source ~/.bashrc
    (ou bien fermer le terminal et en ouvrir un nouveau).
  4. Vérifier que nvm est installé :
    >> nvm --version
  5. Afficher les versions disponibles de Node.js :
    >> nvm ls-remote
  6. Installer la version souhaitée de Node.js, en général la dernière (23.3.0 à ce jour) :
    >> nvm install 23.3.0

Travailler proprement

Le principe général de travail avec Node.js est de créer localement un module qui correspond au travail que l'on souhaite effectuer :

  1. Créer un dossier destiné à contenir le module (par exemple, et pour illustrer monAppli
    c:> mkdir monAppli
  2. Dans un terminal, aller dans ce dossier et initialiser le module avec npm init :
    c:> cd monAppli
    c:\monAppli> npm init
  3. Renseigner les différents champs demandés : dont le nom du package (par défaut le nom du dossier), le nom du fichier source principal (par défaut index.js. Il est possible de laisser tout par défaut. Un fichier package.json est alors créé, configurant le package
  4. Installer localement les dépendances, ie les packages nécessaire au projet. Par exemple :
    c:\monAppli> npm install mqtt
    Ces dépendances sont téléchargées et installées dans le dossier node_modules, et le fichier package.json est actualisé pour indiquer ces dépendances.
  5. Créer le fichier source principal (par défaut index.js) et écrire son contenu
  6. L'exécuter par
    c:\monAppli> node index.js


Mettre à jour Node.js

La version de node.js installé n'est pas à jour, il est donc nécessaire de l'actualiser. Il est obligatoire de faire cette mise à jour à chaque séance car le contenu des postes est remis à zero à chaque démarrage. Cependant la procédure n'est pas très longue :

  1. Télécharger la dernière version de node.js (LTS), ce doit être la 20.10.0 : https://nodejs.org
  2. Lancer l'exécutable :
    1. Il est recommandé de laisser toutes les fonctionnalités de Node.js Windows activées
    2. Cocher la case permettant d’installer les outils nécessaires (Tools for Native Modules).
  3. Dans un terminal
    1. Contrôler la bonne installation de Node.js :
      node -v
      v20.10.0
    2. S'assurer de disposer de la dernière version de npm
      npm install npm -g
    3. Installer les packages nécessaire, par exemple mqtt
      npm install mqtt --save
    4. S'assurer que tout fonctionne bien en lançant node.js
      node
      > const m = require("mqtt");
      > const client = m.connect("mqtt://10.98.35.245");

Installer NodeRed

cf https://nodered.org/docs/getting-started/local

Sur les PC de l'IUT :

  1. Mettre à jour Node.js : en téléchargeant l'installateur depuis https://nodejs.org/en, et en l'exécutant.
  2. dans une invite de commande cmd :
npm install -g --unsafe-perm node-red