n8n - Installation
1. Description
Info
Page en cours de rédaction...
2. Informations
2.1. n8n1.home.lab
| Caractéristiques | |
|---|---|
| RAM | 2 Go |
| CPU | 2 coeurs |
| Disque | 10 Go |
| IP admin | 192.168.50.31 |
2.2. Fichier terraform main.tf
module "n8n1" {
# module proxmox
source = "../../modules/proxmox"
# proxmox
pm_api_token = var.pm_api_token
# tofu
vm_hostname = "n8n1"
vm_domain = "home.lab"
vm_tags = [ "almalinux9", "devops" ]
# cloud-init
vm_ipv4_address = "192.168.50.31/24"
vm_ipv4_gateway = "192.168.50.201"
# hardware
vm_memory = 2048
}
3. Installation
3.1. Installer les packages podman et podman-compose
$ sudo yum install epel-release
$ sudo yum install podman podman-compose
3.2. Configurer les permissions pour podman en mode 'rootless'
$ sudo usermod --add-subuids 100000-165535 --add-subgids 100000-165535 $USER
$ podman system migrate
3.3. Créer le répertoire /opt/n8n pour stocker les fichiers n8n
$ sudo mkdir /opt/n8n
$ sudo chown $USER /opt/n8n
$ mkdir -p /opt/n8n/caddy_data
$ mkdir -p /opt/n8n/caddy_config
$ mkdir -p /opt/n8N/n8n_data
3.4. Créer le fichier podman-compose.yml
version: "3.7"
services:
caddy:
image: caddy:latest
restart: unless-stopped
ports:
- "8080:80"
- "8443:443"
volumes:
- ./caddy_data:/data
- ./caddy_config:/config
- ./caddy_config/Caddyfile:/etc/caddy/Caddyfile
n8n:
image: docker.n8n.io/n8nio/n8n
restart: always
ports:
- 5678:5678
environment:
- N8N_HOST=n8n1.home.lab
- N8N_PORT=5678
- N8N_PROTOCOL=https
- N8N_SECURE_COOKIE=true
- NODE_ENV=production
- WEBHOOK_URL=https://n8n1.home.lab/
- GENERIC_TIMEZONE=Europe/Paris
- TZ=Europe/Paris
volumes:
- ./n8n_data:/home/node/.n8n
- ./local_files:/files
3.5. Créer le fichier caddy_config/Caddyfile
n8n1.home.lab {
reverse_proxy n8n:5678 {
flush_interval -1
}
}
3.6. Ouvrir le port 5678/tcp et 8443/tcp sur firewalld
$ sudo firewall-cmd --permanent --add-port=5678/tcp
$ sudo firewall-cmd --permanent --add-port=8443/tcp
$ sudo firewall-cmd --reload
3.7. Tester en mode non sécurisé (HTTP)
- Pour tester rapidement
n8n, j'utilise dans un premier temps le mode non sécurisé en HTTP (par défaut, les cookies ne sont envoyés que sur HTTPS)- La liste des variables d'environnement est listée ici
$ cd /opt/n8n
$ podman volume create n8n_data
$ podman run -it --rm \
--name n8n -p 5678:5678 \
-v n8n_data:/home/node/.n8n \
-e GENERIC_TIMEZONE="Europe/Paris" \
-e TZ="Europe/Paris" \
-e N8N_SECURE_COOKIE=false \
docker.n8n.io/n8nio/n8n
3.8. Test en mode sécurisé (HTTPS)
- To Be Done
4. Configuration
- Créer un compte local

- Après avoir créé son compte, vous avez accès à la page d'accueil ci-dessous
- et vous pouvez commencer à créer vos workflows d'automatisation !
