Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
nodejs [Le 21/01/2025, 10:53]
nekdev [Depuis un Personal Package Archives (PPA) (dépôts officiels "nodesource")]
nodejs [Le 25/05/2025, 13:35] (Version actuelle)
nekdev [Depuis un PPA (dépôts "nodesource")]
Ligne 19: Ligne 19:
 ===== Installation ===== ===== Installation =====
  
-Il existe de nombreuses manières d'​installer **Node.js**. Ubuntu le propose dans ses dépôts officiels et recommande évidemment cette méthode. Mais certaines applications JavaScript requièrent des versions spécifiques de Node.js et/ou de npm, et [[:APT]] ne convient pas à l'installation ​de versions spécifiques, autres que la version précise proposée nativement avec chaque version particulière d'​Ubuntu.+Il existe de nombreuses manières d'​installer **Node.js**. Ubuntu le propose dans ses dépôts officiels et recommande évidemment cette méthode. Mais certaines applications JavaScript requièrent des versions spécifiques de Node.js et/ou de npm, et [[:​APT]] ​(qu'il s'​agisse de [[:PPA]] ou des [[:​dépôts]] officiels d'​Ubuntu) ​ne convient pas à l'utilisation ​de diverses ​versions spécifiques.
  
-Il existe donc plusieurs autres méthodes d'​installation,​ et en particulier des gestionnaires de paquets ​qui permettent l'​installation voire même l'​usage de plusieurs versions de Node.js ​simultanément : +Il existe donc plusieurs autres méthodes d'​installation,​ et en particulier des gestionnaires de versions ​qui permettent l'​installation voire même l'​usage de plusieurs versions de **Node.js** ​simultanément ​:
-  ​[[:​Docker]] +
-  ​[[https://​docs.brew.sh/​Homebrew-on-Linux|Homebrew]]+
   * [[#​au_moyen_du_gestionnaire_de_versions_nvm|nvm]] (//Node Version Manager//)   * [[#​au_moyen_du_gestionnaire_de_versions_nvm|nvm]] (//Node Version Manager//)
   * [[#​au_moyen_du_gestionnaire_de_versions_n|n]]   * [[#​au_moyen_du_gestionnaire_de_versions_n|n]]
 +  * [[https://​docs.brew.sh/​Homebrew-on-Linux|Homebrew]]
 +
 +Il est aussi possible de profiter de l'​environnement [[:Docker]] pour installer les versions de **Node.js**,​ **npm** ou **Yarn** de son choix, en les isolant du système. Dans ce cadre on préfère généralement déployer plus directement et simplement les images des applications qui reposent sur **Node.js** elles-mêmes.
  
 ==== Depuis les dépôts officiels ==== ==== Depuis les dépôts officiels ====
  
 <note important>​ <note important>​
-sous [[:focal|Focal]], cela installe la version LTS… 10.19 et sous [[:jammy|Jammy]] la version 12.22.9 qui ne sont plus supportées \\ +Cette méthode n'est recommandée que si vous utilisez **Node.js** pour une application en particulier,​ compatible avec une version de **Node.js** parfois ancienne. Les versions d'​Ubuntu étant maintenues plus longtemps que certaines versions de **Node.js**,​ il arrive régulièrement que la version proposée dans les dépôts officielles soit déjà abandonnée. 
-la dernière version LTS en maintenance étant la v18 et la version active la v20 ((cf. https://​nodejs.org/​en/​about/​previous-releases)) !+ 
 +Si vous avez couramment besoin de **Node.js** ou souhaitez utiliser une version récente, utilisez de préférence un gestionnaire de version, tel que **[[#​au_moyen_du_gestionnaire_de_versions_n|n]]** ou **[[#​au_moyen_du_gestionnaire_de_versions_nvm|nvm]]**.
 </​note>​ </​note>​
-Installer **Node.js** sous ubuntu est simple, il suffit d'​[[:​tutoriel:​comment_installer_un_paquet|installer les paquets]] **[[apt>​nodejs,​npm|nodejs npm]]**. ​Vous préfèrerez probablement installer [[#​depuis_un_personal_package_archives_ppa_depots_officiels_nodesource|la version ​que met à disposition l'​équipe ​de Node.js]].+ 
 +Installer **Node.js** sous ubuntu est simple, il suffit d'​[[:​tutoriel:​comment_installer_un_paquet|installer les paquets]] **[[apt>​nodejs,​npm|nodejs npm]]**. ​En revanche ​la version ​installée ​de cette manière peut être ancienne et même déjà abandonnée (voir ci-dessus).
  
 === Résumé en ligne de commande=== === Résumé en ligne de commande===
Ligne 43: Ligne 46:
 </​code>​ </​code>​
  
-<note important>​Il m'a fallu ajouter deux liens symboliques ​: +Si vous souhaitez [[:compilation|compiler]] des projets avec **Node.js** il vous faudra [[:​tutoriel:​comment_installer_un_paquet|installer]] **[[apt>​nodejs-dev]]**. Notez que vous n'avez pas besoin de ce paquet pour développer ​des projets en [[wpfr>JavaScript]],​ il est utile en revanche si vous comptez développer des modules pour **Node.js**,​ eux-mêmes écrits dans un autre langage (par exemple en C/C++).
-<​code>​ +
-sudo ln -s /​usr/​bin/​nodejs /​usr/​local/​bin/​node +
-sudo ln -s /​usr/​bin/​npm /​usr/​local/​bin/​npm +
-</​code>​ +
-</​note>​ +
-<note important>​Ou alors installer ​le paquet ​**[[apt>​nodejs-legacy|nodejs-legacy]]**  qui installera les liens nécessaires à la compatibilité ​des conventions de nommage +
-<code> +
-sudo apt install nodejs-legacy +
-</code> +
-</​note>​+
  
-Si vous souhaitez [[:​compilation|compiler]] des projets avec **Node.js** il vous faudra [[:​tutoriel:​comment_installer_un_paquet|installer]] **[[apt>​nodejs-dev]]**. Notez que vous n'avez pas besoin de ce paquet pour développer des projets en Javascript, il est utile en revanche si vous comptez développer des modules pour Node.js, eux-mêmes écrits dans un autre langage ​(par exemple en C/C++).+==== Depuis ​un PPA (dépôts "​nodesource"​ ====
  
-==== Depuis ​un Personal Package Archives (PPA) (dépôts officiels "​nodesource"​) ​ ====+<note important>​Cette méthode n'​offre pas la souplesse ni la facilité d'​utilisation d'un gestionnaire de version dédié, tel que **[[#​au_moyen_du_gestionnaire_de_versions_n|n]]** ou **[[#​au_moyen_du_gestionnaire_de_versions_nvm|nvm]]**. En outre elle peut complexifier et rendre imprévisibles les mises à jour majeures du système. 
 +</​note>​
  
-[[https://​chrislea.com/​2014/​07/​09/​joining-forces-nodesource/​|Chris Lea]] et [[https://​nodesource.com/​blog/​chris-lea-joins-forces-with-nodesource|NodeSource]] se sont associés pour maintenir un nouveau ​PPA avec des versions stables ​plus récentes ​de Node.js+[[https://​chrislea.com/​2014/​07/​09/​joining-forces-nodesource/​|Chris Lea]] et [[https://​nodesource.com/​blog/​chris-lea-joins-forces-with-nodesource|NodeSource]] se sont associés pour maintenir un [[:PPA]] avec des versions stables de **Node.js**, souvent plus récentes que celles des dépôts officiels.
  
-Chaque version de Node.js possède un script d'​installation qui ajoute le dépôt correspondant au gestionnaire de paquet.+Chaque version de **Node.js** possède un script d'​installation qui ajoute le dépôt correspondant au gestionnaire de paquet.
 On les trouve ici : https://​github.com/​nodesource/​distributions On les trouve ici : https://​github.com/​nodesource/​distributions
  
 === Pour installer Node.js 22.x (LTS : active jusqu'​en oct. 2025, support jusqu'​à fin avril 2027) : === === Pour installer Node.js 22.x (LTS : active jusqu'​en oct. 2025, support jusqu'​à fin avril 2027) : ===
  
-C'est la version recommandée pour vos applications en production.+C'est la dernière ​version ​stable ​recommandée pour vos applications en production.
  
 <​code>​ <​code>​
Ligne 73: Ligne 67:
 </​code>​ </​code>​
  
-=== Pour installer Node.js ​23.x : ===+=== Pour installer Node.js ​24.x : ===
  
 <​code>​ <​code>​
-curl -fsSL https://​deb.nodesource.com/​setup_23.x | sudo -E bash - && sudo apt-get install -y nodejs+curl -fsSL https://​deb.nodesource.com/​setup_24.x | sudo -E bash - && sudo apt-get install -y nodejs
 </​code>​ </​code>​
  
-<​note ​important>Pour installer des paquets supplémentaires avec npm, vous aurez peut être besoin d'​installer **[[apt>​build-essential]]**</​note>​+<​note ​tip>Pour installer des paquets supplémentaires avec npm, vous aurez peut-être besoin d'​installer **[[apt>​build-essential]]**</​note>​
  
 ==== Au moyen du gestionnaire de versions nvm ==== ==== Au moyen du gestionnaire de versions nvm ====
Ligne 92: Ligne 86:
 <​code>​curl -o- https://​raw.githubusercontent.com/​nvm-sh/​nvm/​v0.39.7/​install.sh | bash</​code>​ <​code>​curl -o- https://​raw.githubusercontent.com/​nvm-sh/​nvm/​v0.39.7/​install.sh | bash</​code>​
 <note important>​ <note important>​
-Ce numéro de version est amené à changer, vérifier la commande exacte sur [[https://​github.com/​nvm-sh/​nvm?​tab=readme-ov-file#​install--update-script|cette page]].+Ce numéro de version est amené à changer, vérifier la commande exacte sur [[https://​github.com/​nvm-sh/​nvm?​tab=readme-ov-file#​install--update-script|le dépôt nvm]] ou [[https://​nodejs.org/​fr/​download|la ​page download de la doc officielle de node]].
 </​note>​ </​note>​
 Pour pouvoir utiliser immédiatement la commande ''​nvm''​ : Pour pouvoir utiliser immédiatement la commande ''​nvm''​ :
Ligne 127: Ligne 121:
 ===== Utilisation basique ===== ===== Utilisation basique =====
  
-Voici un exemple d'​application ​javascript ​que pourrait exécuter **Node.js**:​+Voici un exemple d'​application ​JavaScript ​que pourrait exécuter **Node.js**:​
 <file javascript app.js> <file javascript app.js>
 setTimeout(function() { setTimeout(function() {
  • nodejs.1737453236.txt.gz
  • Dernière modification: Le 21/01/2025, 10:53
  • par nekdev
  • Actuellement bloqué par: 57.141.4.25,10.42.2.254