N8N est un logiciel d'automatisation tout comme Make ou en Zappier mais avec l'avantage d'être open source et de proposer une version communautaire auto-hébergée. La plateforme propose moins d'intégrations natives que ses concurrents mais est parfois préférée pour ses possibilités et son fonctionnement particulier qui plaît au geeks comme moi. L'UI est je pense moins bonne que chez les concurrents mais je me sens personnellement moins limité dessus qu'ailleurs.
Dans ce guide, nous allons installer N8N avec Docker Compose et Caddy afin d'y avoir accès gratuitement et de façon illimitée.
Récupération de la configuration
Après avoir installé docker (j'explique comment faire ici si besoin), nous allons récupérer quelques fichiers depuis Github pour configurer notre installation.
Pour cela, voici la commande permettant de cloner ce que j'ai chez moi.
git clone https://github.com/tim-tiret/n8n-docker-caddy.git
Rendons nous ensuite dans le dossier créé.
cd n8n-docker-caddy
Modification des paramètres
Fichier d'environnement
Ici, je vous recommande de mettre à jour le fichier .env
avec vos informations en remplaçant le <directory-path>
, le nom de domaine, l'adresse e-mail, peut-être le fuseau horaire si besoin et éventuellement le sous domaine.
nano .env
Par exemple :
DATA_FOLDER=/root/n8n-docker-caddy
DOMAIN_NAME=timtiret.com
SUBDOMAIN=n8n
# l'exemple ci-dessus donnera : https://n8n.timtiret.com
GENERIC_TIMEZONE=Europe/Berlin
SSL_EMAIL=contact@timotion.fr
Fermez et enregistrez ce fichier à l'aide de ctrl + x
, puis y
puis Entrée
.
Fichier Caddy
On va maintenant mettre à jour la configuration de Caddy pour répondre au bon nom de domaine et qu'il crée automatiquement le certificat SSL (pour HTTPS).
nano caddy_config/Caddyfile
Remplacez simplement le domaine et le sous domaine par les vôtres. Par exemple :
n8n.timtiret.com {
reverse_proxy n8n:5678 {
flush_interval -1
}
}
De la même manière que précédemment, vous pouvez fermer et enregistrer le fichier mis à jour.
Créer les volumes
C'est le moment de créer le volumes qui seront utilisés par docker pour stocker les données de n8n et de Caddy, voici les commandes à exécuter :
sudo docker volume create caddy_data
sudo docker volume create n8n_data
Lancement des conteneurs
Pour démarrer le tout, il ne reste plus qu'une commande à lancer...
docker compose up -d
Quelques secondes plus tard, votre N8N devrait être disponible à l'adresse que vous avez indiqué, félicitations ! 🎉
Mises à jour
Parce que vous aurez certainement besoin de mettre à jour votre N8N sans perdre vos données, voici un lien vers le tutoriel que j'ai réalisé à ce sujet.
Sauvegardes
Pour passer en production, je suppose qu'il est inutile de vous expliquer pourquoi c'est essentiel... Voici mon article à ce sujet.