/

/

Installer n8n sur un serveur OVH

Installer n8n sur un serveur OVH

9 sept. 2025
13
min de lecture

Installer n8n sur un serveur OVH

Installer n8n sur un serveur OVH

Installer n8n sur un serveur OVH

Loris Gautier

Expert Automatisation

Illustration n8n avec des serveurs en arrière plan
Illustration n8n avec des serveurs en arrière plan
Illustration n8n avec des serveurs en arrière plan

Demander de l'aide à une IA à propos cet article :

Sommaire

Sommaire

Sommaire

Sommaire

L'automatisation des processus métier est devenue incontournable pour les entreprises modernes qui cherchent à optimiser leur productivité. Dans ce paysage concurrentiel, n8n se distingue comme une solution d'automatisation open-source particulièrement attractive. Cette plateforme, contrairement à ses concurrents propriétaires comme Zapier ou Microsoft Power Automate, offre une flexibilité totale et un contrôle complet sur vos données.

OVH, quant à lui, s'impose comme le leader européen de l'hébergement cloud avec plus de 1,6 million de clients dans le monde. Fondée en 1999 par Octave Klaba, cette entreprise française s'est bâtie une réputation solide grâce à ses datacenters écologiques, ses prix compétitifs et sa conformité aux réglementations européennes strictes. Combiner n8n avec l'infrastructure OVH, c'est allier puissance technologique et souveraineté numérique.

Vous vous demandez probablement pourquoi choisir spécifiquement cette combinaison ? La réponse est simple : elle vous offre une solution d'automatisation robuste, sécurisée et totalement maîtrisée, sans dépendre d'acteurs américains ou chinois pour vos données sensibles.

Mais pourquoi installer n8n chez OVH ?

L'association entre n8n et OVH n'est pas le fruit du hasard. Elle répond à des besoins concrets d'entreprises qui recherchent performance, fiabilité et conformité réglementaire.

Avantages indéniables d'OVH pour héberger n8n

OVH domine le marché français avec une part de marché de plus de 30% dans l'hébergement web. Cette position de leader ne s'est pas construite par accident, mais grâce à des atouts considérables qui en font le partenaire idéal pour n8n.

Les certifications de sécurité d'OVH constituent un premier avantage majeur. L'hébergeur possède la certification HDS (Hébergeur de Données de Santé), indispensable pour les établissements médicaux qui souhaitent automatiser leurs processus avec n8n. Cette certification garantit le respect du RGPD et des normes de sécurité les plus strictes. De plus, les certifications ISO 27001, SOC 1 et SOC 2 Type II attestent de la maturité des processus de sécurité d'OVH.

La localisation géographique des datacenters représente un autre atout stratégique. Avec 32 datacenters répartis sur 4 continents, mais une forte présence en Europe, OVH garantit une latence optimale pour les utilisateurs européens de n8n. Cette proximité géographique se traduit par des temps de réponse inférieurs à 50ms depuis la France, assurant une expérience utilisateur fluide.

L'écosystème technologique d'OVH s'adapte parfaitement aux besoins de n8n. Les nouvelles gammes VPS 2025 intègrent du stockage NVMe six fois plus rapide que les SSD classiques, un avantage crucial pour n8n qui effectue de nombreuses opérations d'écriture lors de l'exécution des workflows. La bande passante de 1 Gbps en illimité garantit que vos automatisations fonctionneront sans limitation, même avec des volumes de données importants.

Le rapport qualité-prix d'OVH reste imbattable sur le marché européen. Un VPS capable de faire tourner n8n en production coûte moins de 7€ par mois avec engagement, soit dix fois moins qu'une solution cloud équivalente chez les géants américains. Cette accessibilité démocratise l'automatisation pour les PME et les startups.

Inconvénients à considérer avant de se lancer

Cependant, cette médaille a son revers. Le support technique d'OVH fait régulièrement l'objet de critiques. Contrairement aux solutions managées comme Zapier, vous devrez compter principalement sur la documentation et les forums communautaires pour résoudre vos problèmes. Le support téléphonique existe, mais il est payant et parfois difficile à joindre en cas d'urgence.

La complexité technique représente un autre défi. Installer n8n sur OVH nécessite des compétences en administration système que toutes les entreprises ne possèdent pas en interne. Docker, Nginx, PostgreSQL, gestion des certificats SSL... la courbe d'apprentissage peut être raide pour les équipes non techniques.

La responsabilité de la maintenance incombe entièrement à l'utilisateur. Mises à jour de sécurité, sauvegardes, monitoring des performances... tout doit être géré manuellement, contrairement aux solutions SaaS qui s'en chargent automatiquement.

Guide d'installation étape par étape de n8n sur OVH

Maintenant que nous avons posé les bases, entrons dans le vif du sujet avec un guide pratique détaillé.

1. Choix et configuration du VPS OVH optimal

La première étape cruciale consiste à sélectionner le bon VPS. Pour n8n OVH, je recommande fortement le VPS-2 de la gamme 2025, qui offre 6 vCores, 12 GB de RAM et 100 GB de stockage NVMe pour 6,75€/mois avec engagement. Cette configuration supporte confortablement jusqu'à 10 workflows simultanés et 5 utilisateurs actifs.

# Connexion initiale au VPS
ssh root@votre-ip-ovh

# Mise à jour complète du système
apt update && apt upgrade -y

# Installation des outils essentiels

La configuration du pare-feu constitue une étape sécuritaire fondamentale :

# Configuration UFW (Uncomplicated Firewall)
ufw default deny incoming
ufw default allow outgoing
ufw allow ssh
ufw allow 80/tcp
ufw allow 443/tcp
ufw --force enable

Cette configuration bloque tout trafic entrant non autorisé tout en permettant les connexions HTTP/HTTPS nécessaires pour n8n.

Bloqué sur votre projet ?

Je transforme vos idées en résultats concrets

Réponse sous 24h

Approche personnalisée

Satisfaction client

2. Installation et configuration de Docker

Docker simplifie considérablement le déploiement de n8n. L'installation sur Ubuntu est straightforward :

# Installation du repository Docker officiel
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# Installation Docker et Docker Compose
apt update
apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin

# Activation du service Docker
systemctl enable docker
systemctl start docker

# Vérification de l'installation

Pour optimiser Docker sur un VPS aux ressources limitées, créez le fichier de configuration suivant :

cat << EOF > /etc/docker/daemon.json
{
  "storage-driver": "overlay2",
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "10m",
    "max-file": "3"
  },
  "dns": ["8.8.8.8", "1.1.1.1"

Cette configuration limite la taille des logs Docker et optimise les performances réseau.

3. Déploiement de PostgreSQL et n8n avec Docker Compose

La base de données PostgreSQL est devenue obligatoire pour n8n en production depuis la version 1.0. Créons d'abord l'environnement de travail :

# Création du répertoire projet
mkdir -p /opt/n8n && cd /opt/n8n

# Génération de mots de passe sécurisés
export DB_PASSWORD=$(openssl rand -base64 32)
export N8N_ENCRYPTION_KEY=$(openssl rand -base64 32)

# Sauvegarde des credentials (CRUCIAL!)
cat << EOF > .env
DB_PASSWORD=$DB_PASSWORD
N8N_ENCRYPTION_KEY=$N8N_ENCRYPTION_KEY
N8N_BASIC_AUTH_USER=admin
N8N_BASIC_AUTH_PASSWORD=$(openssl rand -base64 16)
EOF

chmod 600 .env
echo "⚠️  SAUVEGARDEZ le fichier .env dans un endroit sûr !"

Créons maintenant le fichier docker-compose.yml optimisé pour la production :

version: '3.8'

services:
  postgres:
    image: postgres:15
    restart: unless-stopped
    environment:
      POSTGRES_DB: n8n
      POSTGRES_USER: n8n
      POSTGRES_PASSWORD: ${DB_PASSWORD}
      POSTGRES_INITDB_ARGS: "--encoding=UTF-8 --lc-collate=C --lc-ctype=C"
    volumes:
      - postgres_data:/var/lib/postgresql/data
      - /etc/localtime:/etc/localtime:ro
    networks:
      - n8n_internal
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U n8n -d n8n"]
      interval: 30s
      timeout: 10s
      retries: 3

  n8n:
    image: n8nio/n8n:latest
    restart: unless-stopped
    ports:
      - "127.0.0.1:5678:5678"
    environment:
      # Base de données
      DB_TYPE: postgresdb
      DB_POSTGRESDB_HOST: postgres
      DB_POSTGRESDB_PORT: 5432
      DB_POSTGRESDB_DATABASE: n8n
      DB_POSTGRESDB_USER: n8n
      DB_POSTGRESDB_PASSWORD: ${DB_PASSWORD}
      
      # Configuration réseau
      N8N_HOST: 0.0.0.0
      N8N_PORT: 5678
      N8N_PROTOCOL: https
      WEBHOOK_URL: https://n8n.votre-domaine.com
      
      # Sécurité
      N8N_BASIC_AUTH_ACTIVE: true
      N8N_BASIC_AUTH_USER: ${N8N_BASIC_AUTH_USER}
      N8N_BASIC_AUTH_PASSWORD: ${N8N_BASIC_AUTH_PASSWORD}
      N8N_ENCRYPTION_KEY: ${N8N_ENCRYPTION_KEY}
      N8N_SECURE_COOKIE: true
      
      # Optimisations production
      N8N_DEFAULT_BINARY_DATA_MODE: filesystem
      N8N_METRICS: true
      EXECUTIONS_DATA_PRUNE: true
      EXECUTIONS_DATA_MAX_AGE: 168
      N8N_DIAGNOSTICS_ENABLED: false
      
      # Localisation française
      N8N_DEFAULT_LOCALE: fr
      GENERIC_TIMEZONE: Europe/Paris
      
      # Performance
      NODE_OPTIONS: "--max-old-space-size=2048"
      
    depends_on:
      postgres:
        condition: service_healthy
    volumes:
      - n8n_data:/home/node/.n8n
      - /etc/localtime:/etc/localtime:ro
    networks:
      - n8n_internal
    healthcheck:
      test: ["CMD-SHELL", "curl -f http://localhost:5678/healthz || exit 1"]
      interval: 30s
      timeout: 10s
      retries: 3

volumes:
  postgres_data:
    driver: local
  n8n_data:
    driver: local

networks:
  n8n_internal:
    driver: bridge
    ipam:
      config:
        - subnet

Lancez l'installation :

# Démarrage des services
docker compose up -d

# Vérification du statut
docker compose ps

# Surveillance des logs

À ce stade, n8n est fonctionnel mais accessible uniquement en local. Nous devons maintenant configurer l'accès public sécurisé.

4. Configuration du domaine et certificat SSL

Pour que votre installation n8n OVH soit accessible publiquement et sécurisée, vous devez configurer un nom de domaine et un certificat SSL.

Dans votre espace client OVH, ajoutez un enregistrement DNS :

  • Type : A

  • Nom : n8n (ou le sous-domaine de votre choix)

  • Cible : L'adresse IP de votre VPS

Attendez 5 à 30 minutes pour la propagation DNS, puis installez Nginx comme reverse proxy :

# Installation Nginx et Certbot
apt install -y nginx certbot python3-certbot-nginx

# Configuration Nginx pour n8n
cat << 'EOF' > /etc/nginx/sites-available/n8n
server {
    listen 80;
    server_name n8n.votre-domaine.com;
    return 301 https://$server_name$request_uri;
}

server {
    listen 443 ssl http2;
    server_name n8n.votre-domaine.com;

    # SSL sera configuré automatiquement par Certbot
    
    # Headers de sécurité
    add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
    add_header X-Frame-Options DENY always;
    add_header X-Content-Type-Options nosniff always;
    add_header Referrer-Policy "strict-origin-when-cross-origin" always;
    add_header X-XSS-Protection "1; mode=block" always;

    location / {
        proxy_pass http://127.0.0.1:5678;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        
        # Configuration WebSocket CRUCIALE pour n8n
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        
        # Optimisations timeouts
        proxy_connect_timeout 60s;
        proxy_send_timeout 60s;
        proxy_read_timeout 60s;
        proxy_buffering off;
        proxy_cache off;
        chunked_transfer_encoding off;
        
        # Limitation du body pour éviter les abus
        client_max_body_size 50M;
    }
    
    # Cacher les pages d'erreur Nginx
    error_page 404 /404.html;
    error_page 500 502 503 504 /50x.html;
}
EOF

# Activation du site
ln -s /etc/nginx/sites-available/n8n /etc/nginx/sites-enabled/
rm -f /etc/nginx/sites-enabled/default

# Test de la configuration
nginx -t

# Si le test passe, rechargement
systemctl reload nginx

# Configuration SSL automatique
certbot --nginx -d n8n.votre-domaine.com --non-interactive --agree-tos --email votre-email@domaine.com

# Vérification du renouvellement automatique
systemctl enable certbot.timer
certbot renew --dry-run

Redémarrez n8n pour prendre en compte la configuration HTTPS :



Votre installation n8n OVH est maintenant accessible via https://n8n.votre-domaine.com avec un certificat SSL valide !

Optimisations et maintenance pour n8n sur OVH

Une fois l'installation terminée, plusieurs optimisations permettent d'améliorer les performances et la fiabilité.

Optimisations système spécifiques aux VPS OVH

Les VPS OVH bénéficient de configurations réseau spécifiques qu'il convient d'optimiser :

# Optimisations réseau pour VPS OVH
cat << EOF >> /etc/sysctl.conf
# Optimisations TCP pour VPS
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.ipv4.tcp_rmem = 4096 65536 16777216
net.ipv4.tcp_wmem = 4096 65536 16777216
net.ipv4.tcp_congestion_control = bbr
net.core.default_qdisc = fq

# Optimisations générales

Pour optimiser Node.js dans le contexte n8n :

# Ajout de variables d'environnement optimisées
cat << EOF >> /etc/environment
NODE_OPTIONS="--max-old-space-size=2048 --dns-result-order=ipv4first"

Stratégie de sauvegarde robuste

La sauvegarde est cruciale pour n8n car elle contient vos workflows et leurs données d'exécution. Voici un script automatisé qui sauvegarde vers l'Object Storage OVH :

# Installation du client OpenStack Swift
apt install -y python3-pip
pip3 install python-swiftclient python-keystoneclient

# Configuration des credentials OpenStack
cat << 'EOF' > /root/.swiftrc
export OS_AUTH_URL=https://auth.cloud.ovh.net/v3
export OS_PROJECT_ID=votre_project_id
export OS_PROJECT_NAME=votre_project_name
export OS_USER_DOMAIN_NAME=Default
export OS_PROJECT_DOMAIN_ID=default
export OS_USERNAME=votre_username
export OS_PASSWORD=votre_password
export OS_REGION_NAME=votre_region
export OS_INTERFACE=public
export OS_IDENTITY_API_VERSION=3
EOF

chmod 600 /root/.swiftrc

# Script de sauvegarde complet
cat << 'EOF' > /usr/local/bin/n8n-backup.sh
#!/bin/bash
set -e

# Configuration
BACKUP_DIR="/tmp/n8n_backup_$(date +%Y%m%d_%H%M%S)"
CONTAINER_NAME="n8n-backups"
RETENTION_DAYS=30

# Chargement des variables Swift
source /root/.swiftrc

mkdir -p "$BACKUP_DIR"

echo "🔄 Début de la sauvegarde n8n..."

# Sauvegarde PostgreSQL
echo "📊 Sauvegarde de la base de données..."
docker compose -f /opt/n8n/docker-compose.yml exec -T postgres pg_dump -U n8n n8n | gzip > "$BACKUP_DIR/n8n_db.sql.gz"

# Sauvegarde des volumes Docker
echo "💾 Sauvegarde des données n8n..."
docker run --rm \
  -v n8n_n8n_data:/source:ro \
  -v "$BACKUP_DIR":/backup \
  alpine tar czf /backup/n8n_data.tar.gz -C /source .

# Sauvegarde de la configuration
echo "⚙️ Sauvegarde de la configuration..."
cp /opt/n8n/.env "$BACKUP_DIR/"
cp /opt/n8n/docker-compose.yml "$BACKUP_DIR/"
cp /etc/nginx/sites-available/n8n "$BACKUP_DIR/nginx-n8n.conf"

# Upload vers Object Storage OVH
echo "☁️ Upload vers Object Storage OVH..."
swift upload "$CONTAINER_NAME" "$BACKUP_DIR"/* --object-name "$(basename $BACKUP_DIR)/"

# Nettoyage des anciennes sauvegardes
echo "🧹 Nettoyage des anciennes sauvegardes..."
swift list "$CONTAINER_NAME" --prefix "n8n_backup_" | \
  head -n -$RETENTION_DAYS | \
  xargs -I {} swift delete "$CONTAINER_NAME" {}

# Nettoyage local
rm -rf "$BACKUP_DIR"

echo "✅ Sauvegarde terminée avec succès!"
EOF

chmod +x /usr/local/bin/n8n-backup.sh

# Planification quotidienne à 2h du matin
echo "0 2 * * * /usr/local/bin/n8n-backup.sh > /var/log/n8n-backup.log 2>&1"

Monitoring et alertes proactives

Un monitoring efficace vous permet d'anticiper les problèmes avant qu'ils n'impactent vos workflows :

# Script de monitoring n8n
cat << 'EOF' > /usr/local/bin/n8n-monitor.sh
#!/bin/bash

# Configuration
WEBHOOK_URL="votre_webhook_discord_ou_slack"
ALERT_THRESHOLD_CPU=80
ALERT_THRESHOLD_RAM=85
ALERT_THRESHOLD_DISK=90

# Fonctions d'alerte
send_alert() {
    local message="$1"
    echo "🚨 $(date): $message" >> /var/log/n8n-monitoring.log
    
    # Envoi vers webhook (Discord/Slack)
    curl -X POST "$WEBHOOK_URL" \
         -H "Content-Type: application/json" \
         -d "{\"content\": \"🚨 **Alert n8n OVH**: $message\"}" \
         2>/dev/null || true
}

# Vérification des services Docker
if ! docker compose -f /opt/n8n/docker-compose.yml ps | grep -q "Up"; then
    send_alert "Services Docker n8n non disponibles!"
fi

# Vérification de l'accès web
if ! curl -f -s "https://n8n.votre-domaine.com/healthz" > /dev/null; then
    send_alert "Interface web n8n inaccessible!"
fi

# Monitoring des ressources
CPU_USAGE=$(top -bn1 | grep "Cpu(s)" | awk '{print $2}' | cut -d'%' -f1)
RAM_USAGE=$(free | grep Mem | awk '{printf("%.0f", $3/$2 * 100.0)}')
DISK_USAGE=$(df /opt/n8n | tail -1 | awk '{print $5}' | cut -d'%' -f1)

if (( $(echo "$CPU_USAGE > $ALERT_THRESHOLD_CPU" | bc -l) )); then
    send_alert "CPU usage élevé: ${CPU_USAGE}%"
fi

if (( RAM_USAGE > ALERT_THRESHOLD_RAM )); then
    send_alert "RAM usage élevé: ${RAM_USAGE}%"
fi

if (( DISK_USAGE > ALERT_THRESHOLD_DISK )); then
    send_alert "Espace disque faible: ${DISK_USAGE}%"
fi

echo "✅ $(date): Monitoring OK - CPU: ${CPU_USAGE}%, RAM: ${RAM_USAGE}%, Disk: ${DISK_USAGE}%" >> /var/log/n8n-monitoring.log
EOF

chmod +x /usr/local/bin/n8n-monitor.sh

# Exécution toutes les 15 minutes
echo "*/15 * * * * /usr/local/bin/n8n-monitor.sh" | crontab -l | { cat; echo "*/15 * * * * /usr/local/bin/n8n-monitor.sh"

Alternatives à l'hébergement OVH pour n8n

Bien qu'OVH soit excellent, d'autres options méritent considération selon vos besoins spécifiques.

Hostinger : L'alternative économique

Hostinger propose des VPS à partir de 6,99€/mois avec des performances correctes pour débuter avec n8n. Leurs avantages incluent un support client réactif 24/7 et une interface d'administration simplifiée. Cependant, les datacenters sont principalement situés en Lituanie et aux Pays-Bas, ce qui peut impacter la latence depuis la France.

Scaleway : La solution française premium

Scaleway, filiale d'Iliad, offre une alternative française haut de gamme. Leurs instances DEV1-M (3 vCPU, 4 GB RAM) à partir de 6,99€/mois conviennent parfaitement à n8n. L'avantage principal réside dans l'écosystème cloud complet (base de données managée, object storage, kubernetes) et le support technique de qualité.

Contabo : Le rapport performance/prix

Contabo se distingue par des VPS très généreux en ressources. Leur VPS M (6 vCPU, 16 GB RAM, 400 GB SSD) coûte seulement 6,99€/mois. C'est parfait pour n8n avec de gros volumes de données, mais attention à la localisation allemande des serveurs et au support parfois lent.

Conclusion : Votre installation n8n OVH est prête !

Félicitations ! Vous disposez maintenant d'une installation n8n OVH robuste, sécurisée et optimisée pour la production. Cette configuration vous permet de gérer des centaines de workflows automatisés tout en gardant un contrôle total sur vos données.

Les points clés à retenir de ce guide :

  • Choisissez le bon VPS : Le VPS-2 d'OVH offre le meilleur équilibre pour la plupart des utilisations

  • Sécurisez dès le départ : SSL, pare-feu et authentification forte sont indispensables

  • Automatisez la maintenance : Sauvegardes et monitoring vous éviteront bien des tracas

  • Documentez votre installation : Conservez précieusement vos fichiers de configuration

Cette installation vous coûtera environ 95€ par an (VPS + domaine + SSL gratuit), soit dix fois moins qu'une solution SaaS équivalente pour une utilisation intensive. De plus, vous bénéficiez d'une souveraineté totale sur vos données, un avantage crucial à l'ère du RGPD.

N'hésitez pas à personnaliser cette configuration selon vos besoins spécifiques. L'écosystème n8n étant très actif, de nouvelles fonctionnalités sont régulièrement ajoutées pour enrichir vos possibilités d'automatisation.

Votre voyage dans l'automatisation avec n8n sur OVH ne fait que commencer. Profitez de cette foundation solide pour transformer vos processus métier et gagner en productivité !