· 6 min read

Déployer une instance n8n en quelques minutes (avec Hidora)

Dévouvrez comment déployer votre propre instance de n8n en quelques minutes (avec Hidora) et gardez la main sur vos données !

Dévouvrez comment déployer votre propre instance de n8n en quelques minutes (avec Hidora) et gardez la main sur vos données !

Article en collaboration commerciale avec Hidora

C’est quoi n8n ?

n8n est une plateforme de workflow open source, à l’instar de Zapier ou Make.

Comme toutes les plateformes de ce type, n8n permet de créer des workflows (visuellement et en no-code), c’est-à-dire des séquences d’actions à effectuer.

Ces actions peuvent être de différents types, par exemple :

  • Récupérer des données depuis une API
  • Envoyer un email
  • Utiliser un LLM
  • Créer un fichier sur un Drive

La force de n8n réside dans son immense écosystème, et en particulier dans le nombre d’intégrations (c’est le terme pour désigner une action pour intégrer un service tiers), d’outil de création d’agents IA, et même de templates de workflows prêts à l’emploi.

Pour vous en convaincre, voici une liste non exhaustive de ressources disponibles pour vous inspirer :

Déployer n8n en version “self-hosted”

Par défaut, et si l’idée de gérer vous-même votre propre instance vous fait peur, vous pouvez utiliser cloud de n8n, c’est-à-dire une instance de n8n gérée par n8n, avec un nombre d’éxécutions limité en fonction du plan choisi. Mais si vous souhaitez avoir votre propre instance, pour garder la main sur vos données, pour éxécuter des workflows de manière illimitée, vous pouvez déployer n8n vous-même.

Tester n8n en local

Pour tester n8n en local, pas besoin d’un serveur, juste d’un ordinateur avec Docker installé. C’est la méthode la plus simple pour vous familiariser avec n8n.

Avec une base de données SQLite

Pour tester, c’est très simple, il suffit d’exécuter la commande suivante :

docker volume create n8n_data

docker run -it --rm \
 --name n8n \
 -p 5678:5678 \
 -v n8n_data:/home/node/.n8n \
 docker.n8n.io/n8nio/n8n

Cette première commande vous permet de lancer une instance de n8n qui utilisera une base de données SQLite pour stocker et organiser vos workflows. Ce n’est évidemment pas la méthode recommandée pour un usage en production, mais c’est une excellente façon de tester n8n en local.

Avec une base de données PostgreSQL

Pour tester n8n avec une base de données PostgreSQL, nous allons nous créer un fichier compose.yml pour lancer les conteneurs nécessaires, ce sera plus propre qu’une suite de commandes Docker.

Créons un fichier compose.yml :

touch compose.yml

Puis ajoutons le contenu suivant :

volumes:
  db_storage:
  n8n_storage:

services:
  postgres:
    image: postgres:16
    restart: always
    environment:
      - POSTGRES_USER=postgres
      - POSTGRES_PASSWORD=postgres
      - POSTGRES_DB=postgres

    volumes:
      - db_storage:/var/lib/postgresql/data
    healthcheck:
      test: ['CMD-SHELL', 'pg_isready -h localhost -U postgres -d postgres']
      interval: 5s
      timeout: 5s
      retries: 10

  n8n:
    image: docker.n8n.io/n8nio/n8n
    restart: always
    environment:
      - DB_TYPE=postgresdb
      - DB_POSTGRESDB_HOST=postgres
      - DB_POSTGRESDB_PORT=5432
      - DB_POSTGRESDB_DATABASE=postgres
      - DB_POSTGRESDB_USER=postgres
      - DB_POSTGRESDB_PASSWORD=postgres
    ports:
      - 5678:5678
    links:
      - postgres
    volumes:
      - n8n_storage:/home/node/.n8n
    depends_on:
      postgres:
        condition: service_healthy

Puis exécutons la commande suivante pour lancer les conteneurs :

docker compose up -d

Vous pouvez maintenant accéder à l’interface de n8n sur http://localhost:5678.

Cette méthode est plus propre et plus proche d’un déploiement en production. Nous verrons plus loin comment déployer n8n en production (avec Hidora)

Déployer n8n en production

Architecture cible

Pour déployer notre instance de n8n en production, nous allons créer une architecture simple, un load balancer/reverse proxy, une base de données PostgreSQL, et l’instance de n8n.

Internet
Load Balancer / Reverse Proxy
PostgreSQL
n8n

Le load balancer/reverse proxy est optionnel, mais il est conseillé de l’utiliser pour gérer le trafic entrant et sortant de votre instance de n8n, lui confier la gestion des certificats SSL, d’éventuelles règles de sécurité, etc.

Déployer n8n avec Hidora

Hidora opère une plateforme qui s’appuie sur Jelastic/Virtuozzo Application Platform, une plateforme de PaaS (Platform as a Service) très puissante et très simple d’utilisation.

J’en profite pour mettre un coup de projecteur sur Hidora qui offre un service client de haute qualité, avec une équipe disponible et compétente pour vous accompagner dans vos projets cloud (Kubernetes, Docker, etc.).

Créer un fichier de manifeste

La plateforme d’Hidora vous permet de créer vos environnements de manière visuelle, mais nous allons utiliser un fichier de manifeste pour déployer notre instance de n8n en un tour de main.

Créons un fichier manifest.yml :

# Deploy n8n with PostgreSQL and Nginx on Jelastic
# Author: YoanDev - https://yoandev.co
# Date: 2025-05-08

type: install

name: Simple n8n Stack
id: simple-n8n-stack

description: Deploy n8n with PostgreSQL and Nginx on Jelastic

categories:
  - application
  - automation
  - integration

ssl: true

settings:
  fields:
  - type: string
    name: DOMAIN
    caption: Domain name (without https://)
  - type: string
    name: URL
    caption: URL of the n8n instance (with https://)

globals:
  DB_PASS: "${fn.password(10)}"

nodes:
  - nodeType: nginx
    nodeGroup: bl
    count: 1
    cloudlets: 8
    fixedCloudlets: 1
    displayName: LoadBalancer

  - nodeType: postgres15
    count: 1
    cloudlets: 8
    fixedCloudlets: 1
    nodeGroup: sqldb
    displayName: postgresql
    isSLBAccessEnabled: false
    password: ${globals.DB_PASS}
    volumes:
      - /var/lib/postgresql/data

  - image: n8nio/n8n:latest
    cloudlets: 12
    fixedCloudlets: 2
    isSLBAccessEnabled: false
    nodeGroup: cp
    volumes:
        - /home/
    env:
      DB_TYPE: postgresdb
      DB_POSTGRESDB_HOST: sqldb
      DB_POSTGRESDB_PORT: "5432"
      DB_POSTGRESDB_DATABASE: postgres
      DB_POSTGRESDB_USER: webadmin
      DB_POSTGRESDB_PASSWORD: ${globals.DB_PASS}
      DOCKER_EXPOSED_PORT: "5678"
      WEBHOOK_URL: ${settings.URL}
      N8N_HOST: ${settings.DOMAIN}
      N8N_EDITOR_BASE_URL: ${settings.URL}
      N8N_PROTOCOL: https
      N8N_RUNNERS_ENABLED: true
      N8N_PROXY_HOPS: 1

Quelques explications sur des points importants du fichier de manifeste :

  • type: install : indique que nous allons installer un environnement
  • ssl: true : indique que nous allons utiliser SSL pour l’environnement
  • settings : les paramètres de l’environnement
    • fields : les champs de configuration qui nous seront demandés lors de la création de l’environnement
      • name: DOMAIN : le nom de domaine de l’environnement
      • name: URL : le nom du champ
  • globals : les variables globales qui seront utilisées lors de la création de l’environnement
    • DB_PASS : généré automatiquement par Hidora et réutilisé pour la base de données PostgreSQL et configurer la connexion de n8n à la base de données
  • nodes : les noeuds qui composent l’environnement
    • nodeType: nginx : Load Balancer/Reverse Proxy fourni par Hidora
    • nodeType: postgres15 : Base de données PostgreSQL fournie par Hidora
    • image: n8nio/n8n:latest : Image de n8n fournie par Hidora
    • cloudlets : Unités de ressources MAX pour le noeud (Ram, Cpu, etc.)
    • fixedCloudlets : Unités de ressources MIN pour le noeud (Ram, Cpu, etc.)
    • count : Nombre de noeuds à créer horizontalement
    • nodeGroup : Groupe de noeuds (cp, bl, sqldb, etc.)
    • volumes : Volumes à monter sur le noeud
    • env : Variables d’environnement à passer à l’instance

Déployer l’environnement

Il vous faudra vous connecter à votre compte Hidora pour déployer l’environnement. Si vous n’avez pas de compte, vous pouvez vous en créer ici.

Pour déployer l’environnement, il suffit d’ouvrir une session sur la console Hidora, de cliquer sur le bouton “Importer”, deux possibilités s’offrent à vous :

Il ne vous reste plus qu’à cliquer sur le bouton “Importation”, renseigner les champs DOMAIN et URL (sans https://) et cliquer sur “Installer”. En moins de 5 minutes, votre instance de n8n sera accessible via le domaine que vous aurez renseigné.

Pensez à créer immédiatement le compte admin de n8n !

Conclusion

Finalement, déployer votre propre instance de n8n n’est pas si compliqué et effrayant qu’il n’y parait. Apres avoir découvert comment l’éxécuter en local, nous avons vu comment le déployer en production avec Hidora, de manière simple et efficace.

Amusez-vous bien !


Article en collaboration commerciale avec Hidora

Back to Blog

Comments (0)

Loading comments...

Leave a Comment