You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
excerpt: "Apprenez à héberger la plateforme d’automatisation N8N sur un VPS OVHcloud à l’aide de Docker et Caddy"
4
-
updated: 2025-06-03
3
+
excerpt: "Apprenez à héberger la plateforme d’automatisation N8N sur un VPS OVHcloud à l’aide de Docker et Traefik"
4
+
updated: 2025-06-11
5
5
---
6
6
7
7
## Objectif
8
8
9
-
Ce guide vous explique comment installer et exécuter [n8n](https://n8n.io), une plateforme open source d’automatisation de workflows, sur un VPS OVHcloud. L’installation s’appuie sur [Docker](https://www.docker.com/), avec le serveur [Caddy](https://caddyserver.com/) pour gérer automatiquement les certificats SSL.
9
+
Ce guide vous explique comment installer et exécuter [n8n](https://n8n.io), une plateforme open source d’automatisation de workflows, sur un VPS OVHcloud. L’installation s’appuie sur [Docker](https://www.docker.com/), avec le serveur [Traefik](https://doc.traefik.io/traefik/) pour gérer automatiquement les certificats SSL.
10
10
11
11
## Prérequis
12
12
@@ -50,7 +50,7 @@ Pour Debian (version 11 et 12) :
Remplacez `exemple.com` par votre véritable nom de domaine et `[email protected]` par l'e-mail de votre choix.
149
102
150
-
- DATA_FOLDER : chemin absolu vers le dossier où vous avez cloné le dépôt Git (dossier de données).
151
-
- DOMAIN_NAME : nom de domaine principal (déjà configuré dans votre zone DNS).
152
-
- SUBDOMAIN : sous-domaine pointant vers votre VPS (ex : `n8n.exemple.com`).
153
-
- GENERIC_TIMEZONE : fuseau horaire utilisé par défaut (important pour les automatisations).
154
-
- SSL_EMAIL : e-mail utilisé pour générer le certificat SSL via Let's Encrypt.
103
+
#### Fichier docker-compose.yml
155
104
156
-
Assurez-vous que votre sous-domaine pointe bien vers l’adresse IP de votre VPS dans la zone DNS. Pour plus de détails, consultez notre guide « [Éditer une zone DNS OVHcloud](/pages/web_cloud/domains/dns_zone_edit){.external} ».
105
+
Ce fichier contient la définition des services N8N et Traefik. Il configure notamment :
157
106
158
-
Redéployez ensuite la stack Docker pour que la configuration soit prise en compte :
107
+
- Le reverse proxy et la gestion SSL avec Traefik.
108
+
- L’authentification de base pour accéder à N8N.
159
109
160
-
```bash
161
-
sudo docker compose down
162
-
sudo docker compose up -d
163
-
```
164
-
165
-
### Définir le domaine dans Caddy
166
-
167
-
Vous avez deux manières de définir le domaine dans le fichier `Caddyfile` :
168
-
169
-
- La modification manuelle est simple et rapide si vous ne comptez faire qu'une seule installation ou modification.
170
-
- La génération dynamique via un script est recommandée si vous gérez plusieurs environnements (développement, production, etc.), ou si vous souhaitez automatiser les déploiements à partir d’un fichier `.env`. Cela permet d’éviter les erreurs manuelles et de centraliser la configuration.
171
-
172
-
#### Option 1 : Modifier manuellement le fichier `Caddyfile`
173
110
174
-
Ouvrez le fichier CaddyFile :
111
+
Créez le fichier :
175
112
176
113
```bash
177
-
nano caddy_config/Caddyfile
114
+
nano docker-compose.yml
178
115
```
179
116
180
-
Remplacez le contenu du fichier par :
117
+
Collez le contenu suivant :
181
118
182
119
```console
183
-
n8n.<domain>.com {
184
-
reverse_proxy n8n:5678 {
185
-
flush_interval -1
186
-
}
187
-
}
188
-
```
189
-
190
-
Remplacez `<domain>` par votre véritable nom de domaine.
> Par défaut, l’utilisateur et le mot de passe sont définis sur admin / admin123. Cette méthode n’est pas activée dans toutes les versions de N8N. Si vous souhaitez l’utiliser malgré tout, pensez à modifier ces valeurs dans le fichier docker-compose.yml avant de lancer la stack, et utilisez un mot de passe fort.
191
174
192
-
Relancez Docker :
175
+
### Préparer le dossier des certificats SSL
193
176
194
-
```bash
195
-
sudo docker compose down
196
-
sudo docker compose up -d
197
-
```
177
+
Traefik stocke les certificats générés par Let's Encrypt dans un fichier nommé acme.json. Ce fichier doit exister avant le lancement et avoir des permissions strictes.
198
178
199
-
#### Option 2 : Générer dynamiquement le fichier `Caddyfile`
200
-
201
-
Créez un fichier à la racine de votre dossier de données (`n8n-docker-caddy` dans notre exemple) :
179
+
Créez le dossier :
202
180
203
181
```bash
204
-
nano generate-caddyfile.sh
205
-
```
206
-
207
-
Collez le contenu suivant :
208
-
209
-
```console
210
-
#!/bin/bash
211
-
212
-
# Charge les variables depuis le fichier .env
213
-
set -a
214
-
source .env
215
-
set +a
216
-
217
-
# Génére dynamiquement le fichier Caddyfile
218
-
cat <<EOF > caddy_config/Caddyfile
219
-
${SUBDOMAIN}.${DOMAIN_NAME} {
220
-
reverse_proxy n8n:5678 {
221
-
flush_interval -1
222
-
}
223
-
}
224
-
EOF
225
-
226
-
echo "Fichier Caddyfile généré avec succès."
182
+
mkdir letsencrypt
227
183
```
228
184
229
-
Rendez le script exécutable :
185
+
Créez le fichier vide :
230
186
231
187
```bash
232
-
chmod +x generate-caddyfile.sh
188
+
touch letsencrypt/acme.json
189
+
chmod 600 letsencrypt/acme.json
233
190
```
234
191
235
-
Puis lancez-le :
192
+
### Démarrer les services
236
193
237
-
```bash
238
-
./generate-caddyfile.sh
239
-
```
240
-
241
-
Relancez Docker :
194
+
Lancez la stack avec Docker Compose :
242
195
243
196
```bash
244
-
sudo docker compose down
245
-
sudo docker compose up -d
197
+
docker compose up -d
246
198
```
247
199
248
-
> [!primary]
249
-
>
250
-
> Le fichier `caddy_config/Caddyfile` sera écrasé à chaque exécution du script. Ne le mofifiez pas manuellement si vous choisissez cette option. À la place, ajoutez un commentaire du type : `# Ce fichier est généré automatiquement par le script generate-caddyfile.sh`.
200
+
### Configuration DNS
201
+
202
+
Assurez-vous que votre sous-domaine (ex : n8n.exemple.com) pointe bien vers l’adresse IP de votre VPS dans la zone DNS. Pour plus de détails, consultez notre guide « [Éditer une zone DNS OVHcloud](/pages/web_cloud/domains/dns_zone_edit){.external} ».
251
203
252
-
####Accéder à N8N
204
+
### Accéder à l’interface N8N
253
205
254
206
Accédez à N8N dans un navigateur via l'URL `https://n8n.exemple.com/`. Remplacez `n8n.exemple.com` par le domaine réel que vous avez défini. La page suivante s'affiche.
255
207
@@ -259,7 +211,7 @@ Une fois la page chargée, vous serez invité à créer le premier utilisateur a
259
211
260
212
### Conclusion
261
213
262
-
Vous disposez désormais d’une instance N8N opérationnelle et sécurisée sur votre VPS OVHcloud, avec une gestion automatique des certificats SSL grâce à Caddy. Pour aller plus loin, consultez la [documentation officielle](https://docs.n8n.io/) de N8N pour créer vos premiers workflows.
214
+
Vous disposez désormais d’une instance N8N opérationnelle et sécurisée sur votre VPS OVHcloud, avec une gestion automatique des certificats SSL grâce à Traefik. Pour aller plus loin, consultez la [documentation officielle](https://docs.n8n.io/) de N8N pour créer vos premiers workflows.
0 commit comments