Aller au contenu

n8n : automatisation et agents IA

n8n est l’outil d’automatisation le plus populaire du moment : workflows visuels, 400+ intégrations, agents IA. L’auto-héberger sur Kontainers vous donne une instance souveraine, sauvegardée et en HTTPS — pour moins de 6 € par mois.

Les manifests de cette page ont été déployés et testés sur la plateforme.

Le déploiement

Une instance mono-replica avec sa base SQLite sur volume persistant — le mode le plus simple, largement suffisant pour un usage individuel ou une petite équipe :

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: n8n-data
spec:
accessModes: [ReadWriteOnce]
storageClassName: ceph-block-rwo
resources:
requests:
storage: 2Gi
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: n8n
spec:
replicas: 1 # SQLite = un seul écrivain
strategy:
type: Recreate # volume RWO : jamais 2 pods simultanés
selector:
matchLabels: {app: n8n}
template:
metadata:
labels: {app: n8n}
spec:
securityContext:
fsGroup: 1000 # n8n tourne en user 1000 : accès au volume
containers:
- name: n8n
image: n8nio/n8n:latest
ports: [{name: http, containerPort: 5678}]
env:
- name: N8N_HOST
value: n8n.example.com # ← votre domaine
- name: WEBHOOK_URL
value: https://n8n.example.com/ # ← URL publique des webhooks
- name: GENERIC_TIMEZONE
value: Europe/Paris
resources:
requests: {cpu: 100m, memory: 512Mi}
volumeMounts:
- name: data
mountPath: /home/node/.n8n
readinessProbe:
httpGet: {path: /healthz, port: http}
initialDelaySeconds: 10
periodSeconds: 5
volumes:
- name: data
persistentVolumeClaim: {claimName: n8n-data}
---
apiVersion: v1
kind: Service
metadata:
name: n8n
spec:
selector: {app: n8n}
ports: [{name: http, port: 5678}]
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: n8n
annotations:
cert-manager.io/issuer: letsencrypt
nginx.ingress.kubernetes.io/proxy-body-size: "16m" # uploads de fichiers
spec:
rules:
- host: n8n.example.com
http:
paths:
- path: /
pathType: Prefix
backend:
service: {name: n8n, port: {number: 5678}}
tls:
- hosts: [n8n.example.com]
secretName: n8n-tls

Mise en route

Fenêtre de terminal
kubectl apply -f n8n.yaml -n <votre-namespace>
kubectl get pods -n <votre-namespace> -w # prêt en ~1 minute

Pointez votre DNS et ouvrez https://n8n.example.com : n8n vous demande de créer le compte administrateur au premier lancement, et vous voilà dans l’éditeur de workflows.

Les webhooks entrants (déclencheurs de workflows depuis l’extérieur) fonctionnent immédiatement : ils passent par l’Ingress HTTPS comme le reste — c’est le rôle de la variable WEBHOOK_URL.

Le coût

PosteDétail€ / mois
Compute100 m / 512 Mi → 3 bundles8,64 € max*
Stockage2 Gi1,44 €

*En pratique moins : n8n consomme peu au repos, et vous pouvez scaler à zéro l’instance quand elle ne sert pas — les workflows planifiés ratés pendant l’arrêt ne s’exécutent simplement pas.

Le volume est sauvegardé chaque nuit — vos workflows et credentials n8n sont couverts sans rien configurer.

Pour aller plus loin

  • Plusieurs utilisateurs intensifs ? Passez la base sur PostgreSQL managé (variables DB_TYPE=postgresdb, DB_POSTGRESDB_* alimentées par le secret CNPG) — n8n supporte alors le mode file d’attente et les replicas multiples ;
  • Agents IA : les nœuds IA de n8n appellent les APIs externes (OpenAI, Anthropic, Mistral…) sans configuration réseau particulière — l’egress est libre ;
  • Suivez la consommation réelle dans le monitoring pour ajuster les requests.