Déployer n8n sur un serveur avec Node.js : guide pratique

Présentation de la plateforme n8n

n8n est une solution open source d'automatisation de flux de travail qui s'interface avec plus de 200 applications et services tiers, encluant Google Sheets, Slack, Notion, Airtable et bien d'autres. Cette plateforme repose sur l'environnement d'exécution Node.js, ce qui nécessite l'installation préalable de ce dernier avant toute mise en service.

Configuration système requise

Avant de commencer, vérifiez que votre machine dispose des éléments suivants :

  • Système d'exploitation : Windows, macOS ou Linux (cet article utilise Ubuntu comme référence)
  • Droits d'administration sur le poste
  • Connexion Internet fonctionnelle

Étape 1 : Installation de Node.js

n8n exige un environnement Node.js. La version LTS 20.x ou supérieure est recommandée pour garantir la compatibilité.

Option A : Installation via le site officiel

Rendez-vous sur https://nodejs.org et téléchargez l'installeur LTS adapté à votre OS :

  • Windows : fichier .msi
  • macOS : fichier .pkg
  • Linux : archive .tar.xz ou installation via le gestionnaire de paquets

Exécutez l'installeur puis vérifiez l'installation :

node --version
npm --version

Des numéros de version doivent s'afficher, confirmant que Node.js et npm sont opérationnels.

Option B : Utilisation d'un gestionnaire de versions (nvm)

Pour les développeurs souhaitant gérer plusieurs versions de Node.js, nvm constitue une approche flexible.

Sous macOS ou Linux :

# Téléchargement et installation de nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash

# Rechargement de la configuration du terminal
source ~/.bashrc

Sous Windows (nvm-windows) :

Téléchargez l'utilitaire depuis GitHub, puis :

nvm install lts
nvm use lts
node --version

Étape 2 : Installation de n8n via npm

Une fois Node.js en place, l'installation de n8n s'effectue en une seule commande :

npm i -g n8n

Sous Linux ou macOS, si une erreur de permission survient :

sudo npm i -g n8n

Confirmez le bon déroulement de l'installation :

n8n --version

Étape 3 : Lancement de la plateforme

Démarrez n8n avec la commande suivante :

n8n start

Au premier lancement, n8n initialise un répertoire de configuration (~/.n8n/), génère une clé de chiffrement et lance le serveur web. Appuyez sur o lorsque l'invite apparaît pour ouvrir l'interface dans votre navigateur.

L'application écoute par défaut sur le port 5678 : http://localhost:5678

Étape 4 : Personnalisation de la configuration

Création du compte administrateur

Lors de la première visite, n8n vous demande de définir un identifiant administrateur (adresse e-mail et mot de passe).

Changement du port d'écoute

Pour utiliser un port différent, par exemple le port 8080 :

export N8N_PORT=8080
n8n start

Ou directement en ligne de commande :

n8n start --port 8080

Activation du HTTPS

En environnement de production, il est vivement conseillé de sécuriser les communications avec HTTPS. Vous pouvez configurer un reverse proxy Nginx avec un certificat Let's Encrypt, ou bien définir la variable N8N_PROTOCOL=https avec vos propres certificats TLS.

Étape 5 : Exécution en tant que service (Linux)

Pour maintenir n8n actif en arrière-plan, pm2 offre une gestion fiable des processus.

npm i -g pm2
pm2 start n8n --name "n8n-service" -- start
pm2 startup
pm2 save

n8n s'exécute désormais en tant que démon et persiste après la fermeture du terminal.

Dépannage courant

Problème Solution
Erreur EACCES (permissions insuffisantes) Préférez nvm pour l'installation ou corrigez les droits npm
Port déjà occupé Modifiez la varible N8N_PORT
Interface web inaccessible Vérifiez les règles du pare-feu et l'ouverture du port
Échec au démarrage Consultez les journaux dans ~/.n8n/logs/

Pour aller plus loin

Une fois n8n opérationnel, vous pouvez explorer plusieurs pistes :

  • Consulter la documentation officielle de n8n
  • Maîtriser les nœuds essentiels : Webhook, Cron Trigger, HTTP Request
  • Connecter des services externes comme Telegram, GitHub ou MySQL
  • Envisager un déploiement via l'image Docker officielle pour la production

Étiquettes: n8n nodejs npm nvm automatisation

Publié le 22 juin à 16h49