n8n
Die Software n8n ist eine sogenannte Low-Code-/ No-Code-Plattform. Damit kann man sehr flexibel Abläufe definieren und verschiedenste Anwendungen ansteuern bzw. für die abzubildenden Prozesse einbinden. Zur Bedienung und Benutzung von n8n gibt es zahlreiche Anleitungen. Hier beschreibe ich nur kurz, wie ich n8n auf einem virtuellen Server in meinem lokalen Netzwerk installiert habe.
Installation Docker
Docker installiere ich entsprechend meiner Anleitung oder mit folgendem Script, welches ich mit meinem Lieblingseditor nano erstelle:
# Shell-Skript zur Installation von Docker (mit sudo ausführen:
#!/bin/bash
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do
apt-get remove $pkg;
done
apt-get update
apt-get install ca-certificates curl
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
chmod a+r /etc/apt/keyrings/docker.asc
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
tee /etc/apt/sources.list.d/docker.list > /dev/null
apt-get update
apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
systemctl start docker
systemctl enable docker
usermod -aG docker "$SUDO_USER"
chmod +x dockerinstall.sh
sudo ./dockerinstall.sh
Installation n8n
Da n8n mit Docker und Docker Compose installiert wird, erstelle ich zunächst einen Ordner n8n in dem Verzeichnis, in dem ich üblicherweise Dockerprojekte auf meinen Servern speichere. Ich nutze dazu einfach mein Homeshare auf dem jeweiligen Server. Das kann man anders machen, aber für mich passt das so.
mkdir n8n
cd n8n
services:
n8n:
image: docker.n8n.io/n8nio/n8n
restart: always
container_name: n8n
ports:
- "5678:5678"
volumes:
- ./n8n_data:/home/node/.n8n
environment:
- N8N_SECURE_COOKIE=false # Wichtig für lokales HTTP ohne SSL
- N8N_PAYLOAD_SIZE_MAX=100 # Kapazitaetsparameter
- NODE_OPTIONS=--max-old-space-size=4096 # Kapazitaetsparameter
- GENERIC_TIMEZONE=Europe/Berlin # Zeitzone
Den Container starte ich mit
docker compose up -d
docker ps
docker logs n8n