Tous les guides

Héberger n8n sur votre VPS : installation testée pas à pas

Docker, n8n et un certificat HTTPS automatique sur votre propre serveur : vos automatisations tournent en continu et vos données restent chez vous.

Équipe SaharaCloud · Publié le 22 octobre 2026

Captures du 22 octobre 2026 sur un VPS de test : interface n8n en anglais, compte et workflow de démonstration.

n8n relie vos outils entre eux : une commande arrive, un message part sur votre messagerie, une ligne s'ajoute à votre tableur, un agent IA prépare la réponse. Installé sur votre propre VPS SaharaCloud, n8n tourne en continu, vos workflows et vos identifiants restent sur votre serveur, et vous réglez le serveur en dinars.

Ce guide reprend les commandes que nous avons exécutées le 22 octobre 2026 sur un VPS Découverte (Ubuntu 24.04, Docker 29.9, n8n 2.44.6) : installation, HTTPS automatique, premier webhook, redémarrage du serveur et mise à jour.

Ce qu'il vous faut

  • Un VPS SaharaCloud sous Ubuntu 24.04. Le VPS Découverte (2 vCPU, 4 Go de RAM) suffit pour démarrer : pendant notre test, n8n utilisait environ 500 Mo de mémoire. Voir les VPS.
  • Un accès SSH root à votre VPS. Si c'est votre première connexion, suivez d'abord notre guide connexion SSH sécurisée.
  • Un nom de domaine pour l'adresse de n8n, par exemple n8n.votredomaine.com. HTTPS est obligatoire pour l'éditeur et pour les webhooks. Rechercher un domaine.

Pointez un sous-domaine vers votre VPS

Dans la zone DNS de votre domaine, créez un enregistrement A :

Type Nom Valeur
A n8n l'adresse IPv4 de votre VPS

Si votre domaine est chez SaharaCloud, la zone DNS se gère depuis votre espace client. Si vous avez activé le pare-feu du VPS dans votre espace client, autorisez en entrée les ports TCP 22, 80 et 443 : le port 80 sert à obtenir le certificat HTTPS.

Installez Docker

Connecté en root, ajoutez le dépôt officiel de Docker puis installez Docker Engine et Docker Compose :

apt update
apt install -y ca-certificates curl
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
chmod a+r /etc/apt/keyrings/docker.asc
tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF
apt update
apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Vérifiez l'installation :

docker --version
docker compose version

Préparez n8n

Créez un dossier pour n8n et son fichier de réglages :

mkdir n8n-compose
cd n8n-compose
mkdir local-files
nano .env

Collez ces lignes en remplaçant le domaine et l'adresse e-mail par les vôtres :

DOMAIN_NAME=votredomaine.com
SUBDOMAIN=n8n
GENERIC_TIMEZONE=Africa/Algiers
SSL_EMAIL=vous@votredomaine.com

Créez ensuite le fichier compose.yaml avec nano compose.yaml et collez ce contenu. Il démarre n8n et Traefik, qui obtient et renouvelle le certificat HTTPS :

services:
  traefik:
    image: "traefik"
    restart: always
    command:
      - "--providers.docker=true"
      - "--providers.docker.exposedbydefault=false"
      - "--entrypoints.web.address=:80"
      - "--entrypoints.web.http.redirections.entryPoint.to=websecure"
      - "--entrypoints.web.http.redirections.entrypoint.scheme=https"
      - "--entrypoints.websecure.address=:443"
      - "--certificatesresolvers.mytlschallenge.acme.tlschallenge=true"
      - "--certificatesresolvers.mytlschallenge.acme.email=${SSL_EMAIL}"
      - "--certificatesresolvers.mytlschallenge.acme.storage=/letsencrypt/acme.json"
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - traefik_data:/letsencrypt
      - /var/run/docker.sock:/var/run/docker.sock:ro

  n8n:
    image: n8nio/n8n
    restart: always
    ports:
      - "127.0.0.1:5678:5678"
    labels:
      - traefik.enable=true
      - traefik.http.routers.n8n.rule=Host(`${SUBDOMAIN}.${DOMAIN_NAME}`)
      - traefik.http.routers.n8n.tls=true
      - traefik.http.routers.n8n.entrypoints=web,websecure
      - traefik.http.routers.n8n.tls.certresolver=mytlschallenge
      - traefik.http.middlewares.n8n.headers.SSLRedirect=true
      - traefik.http.middlewares.n8n.headers.STSSeconds=315360000
      - traefik.http.middlewares.n8n.headers.browserXSSFilter=true
      - traefik.http.middlewares.n8n.headers.contentTypeNosniff=true
      - traefik.http.middlewares.n8n.headers.forceSTSHeader=true
      - traefik.http.middlewares.n8n.headers.SSLHost=${DOMAIN_NAME}
      - traefik.http.middlewares.n8n.headers.STSIncludeSubdomains=true
      - traefik.http.middlewares.n8n.headers.STSPreload=true
      - traefik.http.routers.n8n.middlewares=n8n@docker
    environment:
      - N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true
      - N8N_HOST=${SUBDOMAIN}.${DOMAIN_NAME}
      - N8N_PORT=5678
      - N8N_PROTOCOL=https
      - NODE_ENV=production
      - N8N_WEBHOOK_URL=https://${SUBDOMAIN}.${DOMAIN_NAME}/
      - GENERIC_TIMEZONE=${GENERIC_TIMEZONE}
      - TZ=${GENERIC_TIMEZONE}
      - N8N_RESTRICT_FILE_ACCESS_TO=/files
    volumes:
      - n8n_data:/home/node/.n8n
      - ./local-files:/files

volumes:
  n8n_data:
  traefik_data:

Ce fichier reprend celui de la documentation officielle n8n, sans l'option qui ouvre le tableau de bord de Traefik sans mot de passe. n8n n'écoute que sur 127.0.0.1 : seul Traefik, en HTTPS, est accessible depuis Internet.

Démarrez n8n et créez votre compte

docker compose up -d
docker compose ps

Après une minute environ, ouvrez https://n8n.votredomaine.com. Le certificat HTTPS est obtenu automatiquement et l'adresse en http:// redirige vers https://.

Créez immédiatement le compte propriétaire. Tant qu'il n'existe pas, la première personne qui ouvre l'adresse peut le créer à votre place.

Création du compte propriétaire au premier lancement de n8n
Création du compte propriétaire au premier lancement de n8n

Votre premier workflow et ses webhooks

Dans l'éditeur, ajoutez un nœud Webhook, puis les actions à enchaîner. Une fois le workflow publié, son adresse de production a la forme https://n8n.votredomaine.com/webhook/votre-chemin : vous pouvez la donner à votre boutique, à un formulaire ou à un autre service.

Un workflow publié : webhook puis préparation de la réponse
Un workflow publié : webhook puis préparation de la réponse

Dans notre test, ce workflow répondait depuis l'extérieur à l'heure d'Alger :

curl -X POST https://n8n.votredomaine.com/webhook/nouvelle-commande \
  -H "Content-Type: application/json" -d '{"produit":"Sahara Pro"}'

Redémarrage, mises à jour et sauvegardes

  • Redémarrage du serveur : n8n et Traefik repartent seuls grâce à restart: always. Nous l'avons vérifié après un redémarrage complet du VPS.
  • Mise à jour de n8n : avant une mise à jour, créez un instantané du VPS depuis votre espace client. Puis, dans le dossier n8n-compose :
docker compose pull
docker compose up -d
  • Vos données (workflows, identifiants chiffrés, clé de chiffrement) sont dans le volume Docker n8n_data. Elles sont conservées lors d'un docker compose down puis up. Ne supprimez pas ce volume.
  • Sauvegardes : les instantanés du VPS sont créés à la demande. Faites-en un avant chaque changement important.

Sécurité : les bons réflexes

  • Gardez le port 5678 lié à 127.0.0.1, comme dans le fichier ci-dessus.
  • Docker publie ses ports sans passer par les règles ufw du serveur, comme l'indique la documentation Docker. Pour filtrer le trafic, utilisez plutôt le pare-feu du VPS dans votre espace client.
  • Mettez Ubuntu à jour régulièrement avec apt update && apt upgrade.
  • Choisissez un mot de passe fort pour le compte propriétaire n8n et ne partagez pas l'accès root.

L'édition auto-hébergée de n8n est publiée sous la Sustainable Use License. Elle couvre l'usage pour votre propre activité : lisez-la si vous comptez proposer n8n à vos clients.

Et si vous voulez aussi un assistant IA ?

Le même VPS peut accueillir OpenClaw, un assistant IA open source que vous hébergez vous-même. Pendant notre test, n8n et OpenClaw tournaient ensemble sur un VPS Découverte. Héberger OpenClaw.

Pour continuer

Héberger OpenClaw en Algérie : en un clic ou sur VPS dédié Sahara AI Comparer les hébergements avec Sahara AI
Sahara Cloud

Nous utilisons des cookies nécessaires au fonctionnement du site. Avec votre accord, nous utilisons aussi des cookies pour mesurer notre audience, analyser vos interactions avec Microsoft Clarity et mesurer l’efficacité de nos publicités. Politique de confidentialité

Nécessaires : connexion, panier, sécurité et mémorisation de votre choix. Toujours actifs.