Tutorial

Comment installer Node.js sur CentOS 8

CentOSNode.jsJavaScriptCentOS 8

Introduction

Node.js est un runtime JavaScript pour la programmation côté serveur. Il permet aux développeurs de créer des fonctionnalités d'arrière-plan évolutives en utilisant JavaScript, un langage que beaucoup connaissent déjà grâce au développement web par navigateur.

Dans ce guide, nous vous montrerons trois façons différentes d'installer Node.js sur un serveur CentOS 8 :

  • utiliser dnf pour installer le paquet nodejs du dépôt AppStream par défaut de CentOS
  • installer le nvm, le Node Version Manager (Gestionnaire de versions de Node), et l'utiliser pour installer et gérer plusieurs versions de Node
  • construire et installer Node de la source 

La plupart des utilisateurs devraient utiliser dnf pour installer les versions pré-packagées intégrées de Node. Si vous êtes un développeur ou si vous devez gérer plusieurs versions installées de Node, utilisez la méthode nvm.  Construire à partir de la source est rarement nécessaire pour la plupart des utilisateurs.

Conditions préalables

Pour suivre ce tutoriel, vous aurez besoin d'un serveur qui exécute CentOS 8. Nous supposerons que vous êtes connecté à ce serveur en tant qu'utilisateur non root et sudo. Pour le configurer, consultez notre Guide de configuration initiale du serveur pour CentOS 8.

Option 1 - Installer Node à partir du dépôt CentOS AppStream

Node.js est disponible dans le dépôt de logiciels AppStream par défaut de CentOS 8. Il existe plusieurs versions, et vous pouvez choisir entre elles en activant la fonction module stream appropriée. Dressez d'abord la liste des flux disponibles pour le module nodejs à l'aide de la commande dnf : 

  • sudo dnf module list nodejs
Output
Name Stream Profiles Summary nodejs 10 [d] common [d], development, minimal, s2i Javascript runtime nodejs 12 common, development, minimal, s2i Javascript runtime

Deux flux sont disponibles, 10 et 12. Le [d] indique que la version 10 est le flux par défaut. Si vous préférez installer Node.js 12, changez de module de flux dès maintenant :

  • sudo dnf module enable nodejs:12

Vous serez invité à confirmer votre décision. Ensuite, le flux de la version 12 sera activé et nous pourrons poursuivre l'installation. Pour plus d'informations sur le travail avec les flux de modules, consultez la documentation officielle de CentOS AppStream.

Installez le paquet nodejs avec dnf :

  • sudo dnf install nodejs

Là encore, la dnf vous demandera de confirmer les mesures qu'elle prendra. Appuyez sur y puis sur ENTER (ENTRÉE) pour le faire, et le logiciel s'installera.

Vérifiez que l'installation a réussi en interrogeantnode pour son numéro de version :

  • node --version
Output
v12.13.1

La sortie de votre --version sera différente si vous avez installé Node.js 10 à la place.

Remarque : les deux versions disponibles de Node.js sont un support à long terme ce qui signifie qu'ils ont une fenêtre de maintenance garantie plus longue. Voir la page officielle des communiqués de Node.js pour plus d'informations sur le cycle de vie.

L'installation du paquet nodejs devrait également installer l'utilité npm Node Package Manager en tant que dépendance. Vérifiez également qu'il a été installé correctement :

  • npm --version
Output
6.12.1

À ce stade, vous avez réussi à installer Node.js et npm en utilisant les dépôts de logiciels CentOS. La section suivante montre comment utiliser le gestionnaire de versions des nœuds pour y parvenir.

Option 2 - Installer Node à l'aide du gestionnaire de versions de Node

Une autre façon d'installer Node.js qui est particulièrement souple est d'utiliser nvm, le gestionnaire de versions de Node. Ce logiciel vous permet d'installer et de maintenir simultanément plusieurs versions indépendantes de Node.js ainsi que les paquets de Node qui leur sont associés.

Pour installer le NVM sur votre machine CentOS 8, visitez la page GitHub du projet. Copiez la commande curl du fichier README qui s'affiche sur la page principale.  Vous obtiendrez ainsi la version la plus récente du script d'installation.

Avant de transmettre la commande à bash, il est toujours bon de vérifier le script pour s'assurer qu'il ne fait rien que vous n'approuvez pas. Vous pouvez le faire en supprimant le segment | bash à la fin de la commande curl :

  • curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh

Jetez un coup d'œil et assurez-vous que vous êtes à l'aise avec les changements qu'elle apporte. Lorsque vous êtes satisfait, relancez la commande avec | bash en annexe à la fin.  L'URL que vous utilisez changera en fonction de la dernière version du NVM, mais dès à présent, le script peut être téléchargé et exécuté en tapant :

  • curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash

Le script nvm sera alors installé sur votre compte d'utilisateur. Pour l'utiliser, vous devez d'abord créer votre fichier .bash_profile :

  • source ~/.bash_profile

Maintenant, vous pouvez demander à NVM quelles versions de Node sont disponibles :

nvm list-remote
. . .
       v12.13.0   (LTS: Erbium)
       v12.13.1   (LTS: Erbium)
       v12.14.0   (LTS: Erbium)
       v12.14.1   (LTS: Erbium)
       v12.15.0   (LTS: Erbium)
       v12.16.0   (LTS: Erbium)
       v12.16.1   (Latest LTS: Erbium)
        v13.0.0
        v13.0.1
        v13.1.0
        v13.2.0
        v13.3.0
        v13.4.0
        v13.5.0
        v13.6.0
        v13.7.0
        v13.8.0
        v13.9.0
       v13.10.0
       v13.10.1
       v13.11.0
       v13.12.0

C'est une longue liste ! Vous pouvez installer une version de Node en tapant l'une des versions que vous voyez. Par exemple, pour obtenir la version v13.6.0, vous pouvez taper :

  • nvm install v13.6.0

Vous pouvez voir les différentes versions que vous avez installées en tapant :

nvm list
Output
-> v13.6.0 default -> v13.6.0 node -> stable (-> v13.6.0) (default) stable -> 13.6 (-> v13.6.0) (default)

La première ligne indique la version actuellement active (-> v13.6.0), suivie de certains alias nommés et des versions vers lesquelles ces alias pointent. 

Remarque : si vous avez également une version de Node installée par le biais des dépôts de logiciels CentOS, vous pouvez voir une ligne de system -> v12.13.1 (ou un autre numéro de version) ici. Vous pouvez toujours activer la version système de Node en utilisant nvm use system.

En outre, vous verrez des alias pour les différentes versions de support à long terme (ou LTS) de Node :

Output
lts/* -> lts/erbium (-> N/A) lts/argon -> v4.9.1 (-> N/A) lts/boron -> v6.17.1 (-> N/A) lts/carbon -> v8.17.0 (-> N/A) lts/dubnium -> v10.19.0 (-> N/A) lts/erbium -> v12.16.1 (-> N/A)

Nous pouvons également installer une version basée sur ces alias. Par exemple, pour installer la dernière version du support à long terme, erbium, exécutez ce qui suit :

  • nvm install lts/erbium
Output
Downloading and installing node v12.16.1... . . . Now using node v12.16.1 (npm v6.13.4)

Vous pouvez passer d'une version installée à l'autre avec nvm use : 

nvm use v13.6.0
Now using node v13.6.0 (npm v6.13.4)

Vous pouvez vérifier que l'installation a réussi en utilisant la même technique que dans les autres sections, en tapant :

node --version
Output
v13.6.0

La version correcte de Node est installée sur notre machine comme nous l'avions prévu. Une version compatible de npm est également disponible.

Option 3 - Installer Node à partir de la source

Une autre façon d'installer Node.js est de télécharger le code source et de le compiler vous-même.

Pour ce faire, utilisez votre navigateur web pour accéder à la page de téléchargement officielle de Node.js, cliquez avec le bouton droit de la souris sur le lien du code source et cliquez sur Copy Link Address (Copier l'adresse du lien) ou toute autre option similaire que votre navigateur vous propose.

De retour à votre session SSH, assurez-vous d'abord que vous êtes dans un répertoire où vous pouvez écrire. Nous utiliserons le répertoire d'origine de l'utilisateur actuel :

  • cd ~

Ensuite, tapez curl, collez le lien que vous avez copié du site web, et suivez-le avec | tar xz : 

  • curl https://nodejs.org/dist/v12.16.1/node-v12.16.1.tar.gz | tar xz

Cela permettra d'utiliser l'utilité curl pour télécharger la source puis l’envoyer directement à l'utilité tar qui l'extraira dans le répertoire courant. 

Déplacez-vous dans le répertoire source nouvellement créé :

  • cd node-v*

Il y a quelques paquets que nous devons télécharger à partir des dépôts CentOS afin de compiler le code. Utilisez dnf pour installer ceux-ci maintenant :

  • sudo dnf install gcc-c++ make python2

Vous serez invité à confirmer l'installation. Tapez y puis ENTER (ENTRÉE) pour le faire. Maintenant, nous pouvons configurer et compiler le logiciel :

  • ./configure
  • make -j4

La compilation prendra un certain temps (environ 30 minutes sur un serveur à quatre cœurs). Nous avons utilisé l'option -j4 pour exécuter quatre processus de compilation en parallèle. Vous pouvez omettre cette option ou mettre à jour le nombre en fonction du nombre de cœurs de processeur dont vous disposez.

Lorsque la compilation est terminée, vous pouvez installer le logiciel sur votre système en tapant :

  • sudo make install

Pour vérifier que l'installation a réussi, demandez à Node d'afficher son numéro de version :

  • node --version
v12.16.1

Si vous voyez le bon numéro de version, c'est que l'installation a été effectuée avec succès. Par défaut, Node installe également une version compatible de npm et devrait donc être également disponible. 

Conclusion

Dans ce tutoriel, nous avons montré comment installer Node.js en utilisant le dépôt de logiciels CentOS AppStream, en utilisant le gestionnaire de versions de Node et en compilant à partir des sources.

Si vous souhaitez plus d'informations sur la programmation en JavaScript, veuillez lire notre série de tutoriels :

Creative Commons License