Installer n8n sur Hetzner : serveur d'automatisation conforme au RGPD
Installer n8n sur Hetzner : type de serveur, Docker Compose avec Caddy et pourquoi la localisation allemande du serveur compte pour une automatisation conforme au RGPD.
Comment installer n8n avec Docker Compose : Postgres au lieu de SQLite, .env, volumes et mises à jour étape par étape.
n8n peut être installé sur son propre serveur avec Docker Compose en quelques étapes : vous créez un fichier compose et un fichier .env avec les identifiants, définissez un volume pour les données persistantes et démarrez la stack avec une seule commande. Pour un usage en production, la plupart des exploitants passent de la base de données SQLite fournie à PostgreSQL, car plusieurs workflows s'exécutant simultanément et des sauvegardes régulières fonctionnent ainsi de manière plus fiable. Cet article présente la structure du fichier compose, les variables d'environnement nécessaires, les volumes et le déroulement des mises à jour. État : juillet 2026.
L'installation se fait via un fichier compose.yaml qui démarre le conteneur n8n, combiné à un fichier .env pour les valeurs spécifiques au serveur. Sur un serveur Linux, vérifiez d'abord si Docker et Docker Compose sont installés, par exemple avec les commandes docker --version et docker compose version. Ensuite, créez un répertoire de projet avec le compose.yaml, le fichier .env et un sous-dossier local-files pour l'échange de fichiers entre n8n et l'hôte. Le démarrage se fait avec la commande docker compose up -d, après quoi n8n est accessible via le domaine configuré ou, pour une installation simple à conteneur unique sans reverse proxy, à l'adresse http://localhost:5678. La documentation officielle de n8n propose pour cela une configuration prête à l'emploi avec Docker Compose, qui inclut également Traefik comme reverse proxy pour les certificats TLS.
Par défaut, n8n utilise SQLite et stocke les identifiants, les workflows et l'historique d'exécution sans configuration supplémentaire dans le fichier database.sqlite du répertoire .n8n. Pour passer à PostgreSQL, définissez les variables d'environnement appropriées dans le fichier compose, comme décrit dans la documentation sur le choix de la base de données.
Important : même avec PostgreSQL, le volume pour le répertoire /home/node/.n8n reste nécessaire, car la clé de chiffrement des identifiants s'y trouve toujours.
Le fichier .env regroupe toutes les valeurs qui diffèrent d'un serveur à l'autre, afin que le compose.yaml lui-même reste inchangé. Selon le guide officiel sur l'installation Docker, au moins les variables suivantes doivent y figurer.
Comme ce fichier contient des mots de passe et des identifiants, il n'a pas sa place dans un dépôt Git public.
Pour un fonctionnement durable, plusieurs emplacements de stockage sont importants et doivent être conservés à chaque redémarrage.
Sans ces volumes, les workflows, les identifiants et les certificats sont perdus à chaque reconstruction du conteneur.
Une mise à jour se fait via trois commandes dans le répertoire du fichier compose : docker compose pull télécharge la nouvelle version de l'image, docker compose down arrête la stack en cours d'exécution et docker compose up -d la redémarre avec l'image actuelle. Les volumes restent inchangés, de sorte que les workflows et les identifiants sont conservés. Celui qui souhaite fixer une version précise au lieu de se mettre à jour automatiquement vers la dernière version stable peut indiquer un tag de version concret dans le compose.yaml, par exemple selon la documentation docker.n8n.io/n8nio/n8n:1.81.0, au lieu du tag next pour les versions bêta instables. Celui qui veut une configuration propre dès le départ a intérêt à planifier soigneusement une fois plutôt que de réparer des problèmes de serveur plus tard. C'est exactement ce que prend en charge NordFlux dans le cadre de la configuration n8n à prix fixe, y compris le choix entre SQLite et PostgreSQL adapté à l'usage réel.
Non, ce n'est pas obligatoire. Pour une installation simple à conteneur unique, un volume mappé et le port 5678 suffisent, n8n est alors accessible localement à l'adresse http://localhost:5678. Un domaine ne devient nécessaire que si vous souhaitez utiliser la configuration décrite dans le guide officiel avec Traefik comme reverse proxy et un certificat TLS automatique.
Tout se trouve dans le volume monté qui pointe vers le répertoire /home/node/.n8n dans le conteneur. C'est là que se trouve le fichier de base de données en cas d'utilisation de SQLite, et, quel que soit le choix de la base de données, également la clé de chiffrement des identifiants enregistrés. Sans ce volume, toutes les données sont perdues au prochain redémarrage du conteneur.
La séquence docker compose pull, docker compose down et docker compose up -d met à jour l'image sans toucher aux volumes. Comme les workflows, les identifiants et la base de données se trouvent dans les volumes, ils sont conservés lors de la mise à jour. Avant des sauts de version importants, il vaut néanmoins la peine de consulter les notes de version, car les variables d'environnement peuvent changer d'une version à l'autre.
Oui, les images Docker sont publiées avec différents tags. Un tag de version concret comme 1.81.0 fixe une version stable, tandis que le tag next fournit la version bêta instable pour ceux qui souhaitent tester les nouvelles fonctionnalités à l'avance. Pour les serveurs de production, un tag de version fixe est le choix le plus fiable.
Fondateur de NordFlux. Sept ans d'expérience, du web et du SEO jusqu'à l'automatisation à l'échelle d'un groupe, aujourd'hui pragmatique pour les PME et avec une souveraineté des données allemande.
Certifications
Installer n8n sur Hetzner : type de serveur, Docker Compose avec Caddy et pourquoi la localisation allemande du serveur compte pour une automatisation conforme au RGPD.
Le Self-hosted AI Starter Kit de n8n démarre n8n, Ollama, Qdrant et PostgreSQL via Docker Compose pour des workflows d'IA locaux sans API cloud.
npm, Docker ou application de bureau : comment tester n8n en local, ce qui differe en matiere de persistance et d'effort, et pourquoi l'application de bureau n'existe plus.
Postgres à la place de SQLite, un fichier .env propre et des volumes correctement définis sont la base, mais seule l'exploitation continue avec mises à jour et sauvegardes détermine la fiabilité réelle. NordFlux assure l'exploitation gérée de n8n sur votre infrastructure Docker, avec monitoring, mises à jour et sauvegardes testées plutôt qu'une maintenance ad hoc. Lors du premier échange, nous examinons votre configuration actuelle et montrons les principaux risques d'exploitation.