Aller au contenu

Node.js : installation sur Ubuntu

Node.js est un environnement d’exécution JavaScript côté serveur et en ligne de commande. Ce guide l’installe sur Ubuntu 24.04 et 26.04. Les exemples utilisent des noms génériques.

Version Statut Usage
Node.js 24 (« Krypton ») LTS Choix par défaut pour un serveur
Node.js 22 (« Jod ») LTS, maintenance Pour rester compatible avec une application existante
Node.js 26 Current, devient LTS le 28 octobre 2026 (date annoncée par le projet) Nouveautés, ou à adopter une fois passée en LTS
Node.js 18, 20 et versions impaires (23, 25) Fin de vie À éviter

Pour une application en production, utiliser une version LTS (« Long Term Support »). Les dates exactes de fin de support sont sur nodejs.org/en/about/previous-releases.

Méthode Avantages Inconvénients Pour qui
NodeSource (dépôt apt) Version choisie, mises à jour avec le système Dépôt tiers Serveur de production
Paquet Ubuntu (apt install nodejs) Aucun dépôt à ajouter Version imposée par la distribution, souvent ancienne Essais rapides
snap Canal de version, mises à jour automatiques Confinement classic, démarrage plus lent Poste de travail, serveur simple
nvm Plusieurs versions côte à côte, par utilisateur Installé dans le dossier personnel, pas adapté à un service système Développement (voir Gérer plusieurs versions)

Méthode 1 : dépôt NodeSource (recommandé pour un serveur)

Section intitulée « Méthode 1 : dépôt NodeSource (recommandé pour un serveur) »

Télécharger le script d’installation du dépôt, le lire, puis l’exécuter. Remplacer 24 par la version majeure voulue (22, 26…) :

Fenêtre de terminal
curl -fsSL https://deb.nodesource.com/setup_24.x -o nodesource_setup.sh
less nodesource_setup.sh # lecture avant exécution (q pour quitter)
sudo bash nodesource_setup.sh
sudo apt install -y nodejs

Le paquet nodejs de NodeSource contient déjà npm : ne pas installer le paquet npm d’Ubuntu en plus.

Fenêtre de terminal
sudo apt update
sudo apt install nodejs npm
Ubuntu Version de nodejs fournie
24.04 18 (fin de vie)
26.04 22 (LTS)
Fenêtre de terminal
sudo snap install node --classic --channel=24 # canal de la version majeure voulue
snap list node
sudo snap refresh node --channel=26 # changer de version majeure

Voir Gérer plusieurs versions (nvm).

Fenêtre de terminal
node --version # par exemple v24.x.x
npm --version
command -v node # emplacement de l'exécutable
node -e "console.log('Node.js fonctionne :', process.version)"

Certains paquets npm compilent du code C/C++ à l’installation (via node-gyp). Installer les outils nécessaires :

Fenêtre de terminal
sudo apt install build-essential python3

Avec Node installé par le système, npm install -g écrit dans un dossier protégé (erreur EACCES). Configurer un dossier personnel :

Fenêtre de terminal
mkdir -p ~/.npm-global
npm config set prefix ~/.npm-global
echo 'export PATH="$HOME/.npm-global/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
npm install -g typescript # fonctionne sans sudo
Méthode Mise à jour dans la même version majeure Changement de version majeure
NodeSource sudo apt update && sudo apt upgrade Relancer le script setup_NN.x avec la nouvelle version, puis sudo apt install nodejs
Paquet Ubuntu sudo apt update && sudo apt upgrade Attendre la version d’Ubuntu suivante, ou passer à NodeSource
snap Automatique (sudo snap refresh node) sudo snap refresh node --channel=NN
nvm nvm install --lts idem

Avant un changement de version majeure, lancer les tests de l’application et lire les notes de version sur nodejs.org.

Fenêtre de terminal
# NodeSource ou paquet Ubuntu
sudo apt purge nodejs npm
sudo apt autoremove
sudo rm -f /etc/apt/sources.list.d/nodesource.list /etc/apt/sources.list.d/nodesource.sources
# snap
sudo snap remove node
Symptôme Cause probable et solution
node: command not found Installation incomplète ou PATH : command -v node, rouvrir le terminal
Mauvaise version affichée Un autre Node est prioritaire dans le PATH : which -a node (nvm, snap et apt coexistent)
EACCES: permission denied avec npm install -g Dossier global protégé : voir la section sans sudo ci-dessus
Erreur de compilation node-gyp Installer build-essential et python3
npm: command not found après apt install nodejs Le paquet Ubuntu ne contient pas npm : sudo apt install npm

Ubuntu 24.04 et 26.04 : différences à connaître

Section intitulée « Ubuntu 24.04 et 26.04 : différences à connaître »