-
Was ist ein vServer?
-
vServer und Sicherheit
-
vServer - Anwendungsfälle
-
vServer bei dogado
-
vServer und Plesk
-
vServer Betriebssyteme
-
vServer Glossar
0. Überblick
- Verwendetes System: Debian 12 64 bit
- Genutzter User: Ich nehme alles als „root“ vor
- Zeitdauer: ca. 5 Minuten
- Schwierigkeit: Einfach. Nur Code kopieren 😉
- Besonderheiten:
- Grundlage ist folgende Anleitung: https://www.dogado.de/vps/vserver-anwendungsfaelle/traefik-reverseproxy-auf-vserver-installieren - Diese Anleitung muss zuerst ausgeführt werden.
- Die Installation von Docker / Docker Compose wird hier vorausgesetzt.
Flexibel, leistungsstark und sofort einsatzbereit – dein dogado vServer
Der dogado vServer/VPS bietet dir volle Kontrolle, hohe Performance und flexible Ressourcen. Ideal für Websites, Shops und Anwendungen – sofort einsatzbereit, sicher gehostet in deutschen Rechenzentren.
n8n installieren
1.1 Einleitung
In der Welt der Automatisierungstools hat sich n8n schnell von einem Geheimtipp zu einer der leistungsfähigsten Plattformen entwickelt. Im Gegensatz zu geschlossenen Systemen verfolgt n8n einen "Fair-Code"-Ansatz. Das bedeutet: Der Quellcode ist verfügbar, und das Tool kann entweder in der Cloud genutzt oder – was für Datenschutz und Flexibilität entscheidend ist – auf dem eigenen Server selbst gehostet werden.
1.2 Infos zu yml Dateien
Bei yml Dateien ist es sehr wichtig, dass die Zeilen alle richtig eingerückt sind. Die Zeilen MÜSSEN immer mit der Leertaste eingerückt werden. Es dürfen KEINE Tabs enthalten sein. Ihr könnt den nachfolgenden Code immer online „überprüfen“ lassen. Die meisten Fehler entstehen nämlich durch die falsche Formatierung. Ein Dienst zum Überprüfen ist zum Beispiel: https://codebeautify.org/yaml-validator
1.3 Vorbereitung
Diese Anleitung basiert auf dem aktuellen Debian 12 Betriebssystem. n8n werden wir unter Docker realisieren. Dies ermöglicht uns später sehr schnelle Updates und eine schnelle Installation.
Um n8n neben anderen Diensten auf unserem Server betreiben zu können, nutzen wir hier den Reverse Proxy Traefik. Die Anleitung dazu findet ihr hier: https://www.dogado.de/vps/vserver-anwendungsfaelle/traefik-reverseproxy-auf-vserver-installieren
1.3.1 Verzeichnis erstellen
Wir erstellen uns ein neues Verzeichnis, in welchem wir später alle Daten von n8n abspeichen. Dazu geben wir folgendes in der Konsole ein:
mkdir -p /opt/containers/n8n
Ihr könnt hier auch ein anderes Verzeichnis verwenden. Müsst dann aber die gesamte Anleitung entsprechend anpassen.
1.3.2 docker-compose.yml erstellen
Nun können wir mit der eigentlichen „Installation“ von n8n beginnen. Dazu öffnet ihr folgende Datei:
nano /opt/containers/n8n/docker-compose.yml
Nun kopiert ihr folgenden Code in die Datei. Dieser Code ist unser Bauplan für unseren n8n Container.
services:
n8n-postgres:
image: postgres:16
restart: unless-stopped
env_file:
- ./.env
environment:
- POSTGRES_USER=${POSTGRES_USER}
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
- POSTGRES_DB=${POSTGRES_DB}
- POSTGRES_NON_ROOT_USER=${POSTGRES_NON_ROOT_USER}
- POSTGRES_NON_ROOT_PASSWORD=${POSTGRES_NON_ROOT_PASSWORD}
volumes:
- db_storage:/var/lib/postgresql/data
- ./init-data.sh:/docker-entrypoint-initdb.d/init-data.sh
healthcheck:
test: ['CMD-SHELL', 'pg_isready -h localhost -U ${POSTGRES_USER} -d ${POSTGRES_DB}']
interval: 5s
timeout: 5s
retries: 10
networks:
- default
n8n:
image: docker.n8n.io/n8nio/n8n
restart: unless-stopped
env_file:
- ./.env
environment:
- DB_TYPE=postgresdb
- DB_POSTGRESDB_HOST=n8n-postgres
- DB_POSTGRESDB_PORT=5432
- DB_POSTGRESDB_DATABASE=${POSTGRES_DB}
- DB_POSTGRESDB_USER=${POSTGRES_NON_ROOT_USER}
- DB_POSTGRESDB_PASSWORD=${POSTGRES_NON_ROOT_PASSWORD}
links:
- n8n-postgres
volumes:
- n8n_storage:/home/node/.n8n
depends_on:
n8n-postgres:
condition: service_healthy
labels:
- "traefik.enable=true"
- "traefik.http.routers.n8n.entrypoints=http"
- "traefik.http.routers.n8n.rule=Host(`n8n.euredomain.de`)"
- "traefik.http.middlewares.n8n-https-redirect.redirectscheme.scheme=https"
- "traefik.http.routers.n8n.middlewares=n8n-https-redirect"
- "traefik.http.routers.n8n-secure.entrypoints=https"
- "traefik.http.routers.n8n-secure.rule=Host(`n8n.euredomain.de`)"
- "traefik.http.routers.n8n-secure.tls=true"
- "traefik.http.routers.n8n-secure.tls.certresolver=http"
- "traefik.http.routers.n8n-secure.service=n8n"
- "traefik.http.services.n8n.loadbalancer.server.port=5678"
- "traefik.docker.network=proxy"
- "traefik.http.routers.n8n-secure.middlewares=secHeaders@file"
networks:
- proxy
- default
networks:
proxy:
external: true
volumes:
db_storage:
n8n_storage:
1.3.3 Hostname anpassen
Nun müsst ihr noch den Hostnamen anpassen, über welchen später n8n erreichbar sein soll.
Diese beiden Zeilen müsst ihr anpassen.
- "traefik.http.routers.n8n.rule= Host(`n8n.euredomain.de`)"
- "traefik.http.routers.n8n-secure.rule= Host(`n8n.euredomain.de`)"
In meinem Fall also:
- "traefik.http.routers.n8n.rule= Host(`n8n.testbereich.net`)"
- "traefik.http.routers.n8n-secure.rule= Host(`n8n.testbereich.net`)"
1.3.4 Konfigurationsdatei anlegen
Nun legen wir noch eine Konfigurationsdatei an, welche wichtige Infos zur Datenbank beinhaltet. Dazu gebt ihr folgendes ein:
nano /opt/containers/n8n/.env
Inhalt:
POSTGRES_USER=changeUser
POSTGRES_PASSWORD=changePassword
POSTGRES_DB=n8n
POSTGRES_NON_ROOT_USER=changeUser
POSTGRES_NON_ROOT_PASSWORD=changePassword
Diese Daten könnt ihr nun beliebig anpassen.
1.3.5 Datenbank Initialisierungsskript erstellen
Jetzt benötigen wir noch ein Skript, welches die Datenbank beim ersten Start für uns initialisiert. Dafür gebt ihr folgendes ein:
nano /opt/containers/n8n/init-data.sh
Inhalt:
#!/bin/bash
set -e;
if [ -n "${POSTGRES_NON_ROOT_USER:-}" ] && [ -n "${POSTGRES_NON_ROOT_PASSWORD:-}" ]; then
psql -v ON_ERROR_STOP=1 --username "$POSTGRES_USER" --dbname "$POSTGRES_DB" <<-EOSQL
CREATE USER ${POSTGRES_NON_ROOT_USER} WITH PASSWORD '${POSTGRES_NON_ROOT_PASSWORD}';
GRANT ALL PRIVILEGES ON DATABASE ${POSTGRES_DB} TO ${POSTGRES_NON_ROOT_USER};
GRANT CREATE ON SCHEMA public TO ${POSTGRES_NON_ROOT_USER};
EOSQL
else
echo "SETUP INFO: No Environment variables given!"
fi
n8n starten
Gebt nun folgendes ein, um euren n8n Container zu starten:
docker compose -f /opt/containers/n8n/docker-compose.yml up -d
Beim ersten Start des Containers wird n8n initialisiert. Dies bedeutet, dass die Datenbank eingerichtet, eure Einstellungen übernommen werden und vieles mehr. Daher dauert es einige Minuten, bis der Container dann über die Webseite (z.B. n8n.testbereich.net) erreichbar ist.
2.1 n8n einrichten
Ihr werdet nun aufgefordert einen Benutzer zu erstellen. Gebt hier eure persönlichen Daten ein.
Nun werdet ihr noch einiges über euch gefragt.
Dies könnt ihr überspringen, indem ihr auf „Get started“ klickt. Im letzten Schritt könnt ihr euch nun noch beim Hersteller registrieren, damit ihr zusätzliche Features aktivieren könnt.
Diesen Schritt könnt ihr mittels „Skip“ überspringen. Nun ist n8n fertig eingerichtet.
Flexibel, leistungsstark und sofort einsatzbereit – dein dogado vServer
Der dogado vServer/VPS bietet dir volle Kontrolle, hohe Performance und flexible Ressourcen. Ideal für Websites, Shops und Anwendungen – sofort einsatzbereit, sicher gehostet in deutschen Rechenzentren.