GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment installer node.js sur RHEL 8 / CentOS 8 Linux

Node.js est un environnement d'exécution Javascript basé sur le V8 moteur open source créé par Google et utilisé à l'origine dans Chrome. Grâce à Node.js, nous pouvons exécuter Javascript en dehors du contexte du navigateur et l'utiliser également comme un langage de script côté serveur, créant ainsi une application Web complète autour de lui. Dans ce tutoriel, nous verrons comment installer Node.js dans la distribution RHEL 8 / CentOS 8.

Dans ce didacticiel, vous apprendrez :

  • Comment répertorier les versions Node.js disponibles sur RHEL 8/CentOS 8
  • Comment installer une version spécifique de Node.js
  • Comment basculer entre les versions de Node.js sur RHEL 8/CentOS 8


Le Node.js – RHEL 8

Configuration logicielle requise et conventions utilisées

Configuration logicielle requise et conventions de ligne de commande Linux
Catégorie Exigences, conventions ou version du logiciel utilisée
Système RHEL 8/CentOS 8
Logiciel Le logiciel nécessaire pour suivre ce tutoriel est déjà inclus dans une installation minimale de Rhel 8
Autre Privilèges root pour installer les packages nécessaires
Conventions # - nécessite que les commandes linux données soient exécutées avec les privilèges root soit directement en tant qu'utilisateur root, soit en utilisant sudo commande
$ – nécessite que les commandes linux données soient exécutées en tant qu'utilisateur normal non privilégié

Quelle version de Node.js ?

Comme nous l'avons vu dans un article précédent sur l'installation de php sur Rhel8, la version de Red Hat Enterprise Linux introduit une nouvelle façon d'organiser les logiciels dans des référentiels. Par défaut, il n'y a que deux sources logicielles activées dans la distribution :BaseOs et Appstream . Le premier contient les packages de base nécessaires au système d'exploitation, tandis que le second héberge différents types de logiciels organisés en modules .

Le principal avantage de l'utilisation de ce paradigme est qu'il est possible de choisir entre différentes versions d'une même application ou d'un même utilitaire. Node.js est l'une des applications incluses dans le Appstream référentiel, donc pour vérifier les versions de ce runtime Javascript disponibles sur RHEL 8, il suffit d'utiliser module , une sous-commande de dnf , le gestionnaire de packages de distribution. Nous courons :

$ sudo dnf module list nodejs

La sortie de la commande affiche les modules disponibles et leur état :

Red Hat Enterprise Linux 8 for x86_64 - AppStream Beta (RPMs)
Name                       Stream                     Profiles                                      Summary
nodejs                     10 [d]                     development, minimal, s2i, default [d]        Javascript runtime
nodejs                     8                          development, minimal, s2i, default [d]        Javascript runtime

Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

Que nous dit cette sortie ? Tout d'abord nous pouvons voir qu'il existe deux versions (ou "streams") de Node.js disponible sur le système :10 et 8. Nous pouvons également voir que le premier est marqué comme [d] et est donc défini comme celui par défaut à installer. Pour chaque flux, plusieurs profils sont disponibles :différents ensembles de packages seront installés en fonction de celui qui est sélectionné. Pour voir la liste des packages qui seraient installés avec chaque profil, nous pouvons exécuter la commande suivante :

$ sudo dnf module info --profile nodejs

La syntaxe de la commande est intuitive :nous avons utilisé dnf avec le module sous-commande et le info action, pour demander des informations sur le module nodejs. En fournissant le --profile option, nous avons spécifié que nous voulions des informations sur les profils disponibles. Voici le résultat de la commande :

Name        : nodejs:10:20181011133319:9edba152:x86_64
development : nodejs
            : nodejs-devel
            : npm
minimal     : nodejs
s2i         : nodejs
            : nodejs-nodemon
            : npm
default     : nodejs
            : npm

Name        : nodejs:8:20181011134412:9edba152:x86_64
development : nodejs
            : nodejs-devel
            : npm
minimal     : nodejs
s2i         : nodejs
            : nodejs-nodemon
            : npm
default     : nodejs
            : npm

Pour chaque flux disponible, la liste des packages inclus dans chaque profil est affichée. Nous pouvons le voir en utilisant le default profile, les packages inclus dans l'installation sont nodejs lui-même et npm , le gestionnaire de packages de nœuds. En utilisant le development profil, le nodejs-devel package est ajouté à la liste, tandis que lors de l'utilisation du minimal un, le seul package installé est nodejs. Enfin, le s2i Le profil (Source-to-Image) inclut nodejs, npm et nodejs-nodemon qui est essentiellement un script destiné à être utilisé lors du développement d'une application node.js.

Installation de la version par défaut

Maintenant que nous connaissons les versions disponibles de Node.js, nous pouvons décider laquelle installer. Comme nous l'avons dit plus haut, la version par défaut est 10. Si c'est celle souhaitée, il suffit de lancer :

$ sudo dnf install nodejs

Un récapitulatif des packages à installer et de leurs dépendances s'affichera sur le terminal, et le système demandera la confirmation pour continuer :

======================================================================================================================================================
 Package                 Arch               Version                                          Repository                                         Size
======================================================================================================================================================
Installing:
 nodejs                  x86_64             1:10.11.0-2.el8+2021+27085a9b                    Rhel-8-for-x86_64-appstream-beta-rpms             8.4 M
Installing dependencies:
 npm                     x86_64             1:6.4.1-1.10.11.0.2.el8+2021+27085a9b            Rhel-8-for-x86_64-appstream-beta-rpms             3.6 M
 libuv                   x86_64             1:1.23.1-1.el8                                   Rhel-8-for-x86_64-appstream-beta-rpms             134 k
 http-parser             x86_64             2.8.0-1.el8                                      Rhel-8-for-x86_64-appstream-beta-rpms              40 k
Enabling module streams:
 nodejs                                     10


Transaction Summary
======================================================================================================================================================
Install  4 Packages

Total download size: 12 M
Installed size: 57 M
Is this ok [y/N]:

Spécifier la version à installer

Et si nous voulons installer une version alternative (un stream dans la terminologie Rhel) ou un profil différent ? La syntaxe est assez simple :

name:stream/profile

En gros, pour installer la version par défaut du nodejs module, mais avec le development profil, nous lancerions :

$ sudo dnf module install nodejs:10/development

La liste des packages qui seraient installés augmente en fonction du changement de profil :

======================================================================================================================================================
 Package                       Arch            Version                                          Repository                                      Size
======================================================================================================================================================
Installing group/module packages:
 npm                           x86_64          1:6.4.1-1.10.11.0.2.el8+2021+27085a9b            Rhel-8-for-x86_64-appstream-beta-rpms          3.6 M
 nodejs-devel                  x86_64          1:10.11.0-2.el8+2021+27085a9b                    Rhel-8-for-x86_64-appstream-beta-rpms           11 M
 nodejs                        x86_64          1:10.11.0-2.el8+2021+27085a9b                    Rhel-8-for-x86_64-appstream-beta-rpms          8.4 M
Installing dependencies:
 redhat-rpm-config             noarch          115-1.el8                                        Rhel-8-for-x86_64-appstream-beta-rpms           82 k
 perl-srpm-macros              noarch          1-25.el8                                         Rhel-8-for-x86_64-appstream-beta-rpms           11 k
 go-srpm-macros                noarch          2-16.el8                                         Rhel-8-for-x86_64-appstream-beta-rpms           14 k
 dwz                           x86_64          0.12-9.el8                                       Rhel-8-for-x86_64-appstream-beta-rpms          109 k
 libuv                         x86_64          1:1.23.1-1.el8                                   Rhel-8-for-x86_64-appstream-beta-rpms          134 k
 http-parser                   x86_64          2.8.0-1.el8                                      Rhel-8-for-x86_64-appstream-beta-rpms           40 k
 python3-rpm-macros            noarch          3-35.el8                                         Rhel-8-for-x86_64-appstream-beta-rpms           13 k
 rust-srpm-macros              noarch          5-2.el8                                          Rhel-8-for-x86_64-appstream-beta-rpms          9.3 k
 ocaml-srpm-macros             noarch          5-4.el8                                          Rhel-8-for-x86_64-appstream-beta-rpms          9.5 k
 efi-srpm-macros               noarch          3-2.el8                                          Rhel-8-for-x86_64-appstream-beta-rpms           22 k
 qt5-srpm-macros               noarch          5.11.1-2.el8                                     Rhel-8-for-x86_64-appstream-beta-rpms           11 k
 http-parser-devel             x86_64          2.8.0-1.el8                                      Rhel-8-for-x86_64-appstream-beta-rpms           18 k
 nodejs-packaging              noarch          17-2.el8+1541+81a6effd                           Rhel-8-for-x86_64-appstream-beta-rpms           19 k
 libuv-devel                   x86_64          1:1.23.1-1.el8                                   Rhel-8-for-x86_64-appstream-beta-rpms           34 k
 ghc-srpm-macros               noarch          1.4.2-7.el8                                      Rhel-8-for-x86_64-appstream-beta-rpms          9.4 k
 python-srpm-macros            noarch          3-35.el8                                         Rhel-8-for-x86_64-appstream-beta-rpms           14 k
 openblas-srpm-macros          noarch          2-2.el8                                          Rhel-8-for-x86_64-appstream-beta-rpms          8.0 k
 krb5-devel                    x86_64          1.16.1-19.el8                                    Rhel-8-for-x86_64-baseos-beta-rpms             546 k
 libsepol-devel                x86_64          2.8-1.el8                                        Rhel-8-for-x86_64-baseos-beta-rpms              85 k
 libcom_err-devel              x86_64          1.44.3-1.el8                                     Rhel-8-for-x86_64-baseos-beta-rpms              37 k
 pcre2-devel                   x86_64          10.31-11.el8                                     Rhel-8-for-x86_64-baseos-beta-rpms             591 k
 zip                           x86_64          3.0-21.el8                                       Rhel-8-for-x86_64-baseos-beta-rpms             270 k
 libkadm5                      x86_64          1.16.1-19.el8                                    Rhel-8-for-x86_64-baseos-beta-rpms             184 k
 unzip                         x86_64          6.0-38.el8                                       Rhel-8-for-x86_64-baseos-beta-rpms             192 k
 keyutils-libs-devel           x86_64          1.5.10-6.el8                                     Rhel-8-for-x86_64-baseos-beta-rpms              48 k
 openssl-devel                 x86_64          1:1.1.1-6.el8                                    Rhel-8-for-x86_64-baseos-beta-rpms             2.3 M
 libselinux-devel              x86_64          2.8-5.el8                                        Rhel-8-for-x86_64-baseos-beta-rpms             199 k
 zlib-devel                    x86_64          1.2.11-10.el8                                    Rhel-8-for-x86_64-baseos-beta-rpms              56 k
 pcre2-utf16                   x86_64          10.31-11.el8                                     Rhel-8-for-x86_64-baseos-beta-rpms             223 k
 libverto-devel                x86_64          0.3.0-5.el8                                      Rhel-8-for-x86_64-baseos-beta-rpms              18 k
 pcre2-utf32                   x86_64          10.31-11.el8                                     Rhel-8-for-x86_64-baseos-beta-rpms             215 k
Installing module profiles:
 nodejs/development

Enabling module streams:
 nodejs                                        10


Transaction Summary
======================================================================================================================================================
Install  34 Packages

De la même manière, pour installer la version 8 du runtime Javascript avec le profil par défaut, nous exécuterions :

$ sudo dnf module install nodejs:8

Dans ce cas, puisque nous voulions utiliser le profil par défaut, nous avons omis de l'inclure dans la commande. Comme vous pouvez
vérifier dans la sortie ci-dessous, la version des packages à installer a de nouveau changé :

======================================================================================================================================================
 Package                 Arch               Version                                          Repository                                         Size
======================================================================================================================================================
Installing group/module packages:
 nodejs                  x86_64             1:8.11.4-2.el8+2022+2ec55091                     Rhel-8-for-x86_64-appstream-beta-rpms             7.5 M
 npm                     x86_64             1:5.6.0-1.8.11.4.2.el8+2022+2ec55091             Rhel-8-for-x86_64-appstream-beta-rpms             4.1 M
Installing dependencies:
 libuv                   x86_64             1:1.23.1-1.el8                                   Rhel-8-for-x86_64-appstream-beta-rpms             134 k
 http-parser             x86_64             2.8.0-1.el8                                      Rhel-8-for-x86_64-appstream-beta-rpms              40 k
Installing module profiles:
 nodejs/default

Enabling module streams:
 nodejs                                     8


Transaction Summary
======================================================================================================================================================
Install  4 Packages

Supposons que nous confirmions l'installation de la liste des packages ci-dessus. Si nous exécutons maintenant :

$ sudo dnf module list nodejs

Nous pouvons voir les changements reflétés par la notation utilisée dans la sortie :

Name                      Stream                    Profiles                    Summary
nodejs                    10 [d]                    development, minimal, s2i, default [d]                       Javascript runtime
nodejs                    8 [e]                     development, minimal, s2i, default [d] [i]                   Javascript runtime

Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

La version 10 est toujours marqué comme celui par défaut, mais maintenant la version 8 le flux est marqué avec [e] ce qui signifie qu'il a été automatiquement activé. De plus, le [i] La marque est utilisée dans la section des profils du même flux, près du nom de celui installé.

Changer de version

Et si nous installions une version spécifique de Node.js et que nous voulions passer à une autre ? Fondamentalement, nous devons spécifier la nouvelle version à installer et le système s'occupera du reste. Par exemple, pour revenir à la version 10 nous recommençons :

$ sudo dnf module install nodejs:10/default

Les actions qui seraient réalisées afin de satisfaire la demande nous sont calculées et affichées. Dans le Transaction Summary section de la sortie ci-dessous, on peut en effet remarquer que 2 packages (nodejs et npm) seraient mis à jour :

======================================================================================================================================================
 Package             Arch                Version                                             Repository                                          Size
======================================================================================================================================================
Upgrading:
 npm                 x86_64              1:6.4.1-1.10.11.0.2.el8+2021+27085a9b               Rhel-8-for-x86_64-appstream-beta-rpms              3.6 M
 nodejs              x86_64              1:10.11.0-2.el8+2021+27085a9b                       Rhel-8-for-x86_64-appstream-beta-rpms              8.4 M
Switching module streams:
 nodejs                                  8 -> 10


Transaction Summary
======================================================================================================================================================
Upgrade  2 Packages

Conclusion

Node.js est un runtime basé sur le moteur Javascript V8 créé par Google et utilisé à l'origine dans le navigateur Chrome. En l'utilisant, nous pouvons créer des applications utilisant Javascript en dehors du contexte d'un navigateur Web. Dans ce tutoriel, nous avons vu comment installer le nodejs package sur le système d'exploitation RHEL/CentOS Linux 8, quelles versions du package sont disponibles dans les référentiels par défaut, comment est-il possible d'en installer un spécifique, et comment, grâce aux modules , la nouvelle façon d'organiser les logiciels dans la dernière version de la distribution d'entreprise Red Hat, nous pouvons passer d'une version à l'autre.


Cent OS
  1. Comment installer redmine sur RHEL 8 / CentOS 8 Linux

  2. Comment installer Hadoop sur RHEL 8 / CentOS 8 Linux

  3. Comment installer Perl sur RHEL 8 / CentOS 8 Linux

  4. Comment installer Apache Tomcat sur Linux RHEL 8 / CentOS 8

  5. Comment installer le serveur DNS sur RHEL 8 / CentOS 8 Linux

Comment installer WordPress sur RHEL 8 / CentOS 8 Linux

Comment installer GIMP sur CentOS 8 / RHEL 8 Linux

Comment installer NodeJS sur CentOS 8 / RHEL 8

Comment installer Node.js sur CentOS 7 / RHEL 7

Comment installer Node.js sur CentOS 8

Comment installer Node.js sur CentOS 7