n8n är en ledande visuell editor för snabba iterationer där du kan skapa automatiseringsarbetsflöden och se resultat direkt. Perfekt för vardagliga automatiseringar och komplexa AI-agentarbetsflöden.
Egen hosting-stöd och low-code-editorn gör n8n till en favorit bland utvecklare. Om du vill ha maximal kontroll, anpassningar och långsiktigt spara kostnader är den egenhostade varianten perfekt för dig.
Vill du hosta n8n själv? Vi guidar dig steg för steg genom installation och konfiguration och visar allt du behöver veta.
n8n är lättviktigt, men resursförbrukningen kan öka med antalet arbetsflöden, API-anrop och dataintensiva noder. Vi rekommenderar följande hårdvarukrav för din VPS för att hosta n8n:
| Hårdvara | Minimum | Rekommenderat |
|---|---|---|
| CPU | 1 vCPU-kärna | 2 vCPU-kärnor |
| RAM | 2 GB | 4 GB |
| Lagring | 20 GB | 50 GB |
När Docker körs på din server, kontrollera installationen med:
docker --version
docker compose version
Skapa en projektmapp för att lagra n8n:s lokala filer och miljövariabler, och gå in i den:
mkdir n8n-compose
cd n8n-compose
Skapa en .env-fil i n8n-compose-mappen med nano .env och klistra in följande kod med n8n:s miljövariabler:
# DOMAIN_NAME och SUBDOMAIN bestämmer tillsammans vilken adress n8n är tillgängligt på
# Toppdomänen
DOMAIN_NAME=zap.cloud
# Subdomänen
SUBDOMAIN=silver-octopus-xxxxx
# Exemplet ovan gör n8n tillgängligt på: https://silver-octopus-xxxxx.zap.cloud
# Valfri tidszon som används av Cron och andra schemaläggningsnoder
GENERIC_TIMEZONE=Europe/Berlin
# E-postadress för TLS/SSL-certifikat
SSL_EMAIL=hello@zap-hosting.com
Hostname.
Fyll i delen zap.cloud i DOMAIN_NAME och första delen i SUBDOMAIN (t.ex. silver-octopus-xxxxx).
HTTPS-krav Använd inte en ren IP-adress i .env-filen. n8n kräver HTTPS-anslutning och SSL-certifikat utfärdas endast för domäner, inte IP-adresser.
Om du vill hosta n8n på din egen domän, skapa en subdomän för n8n genom att lägga till en A-post i din domäns DNS-hanterare som pekar på din VPS-serverns IP.
| Namn | Typ | Värde | TTL | Prioritet |
|---|---|---|---|---|
| n8n (subdomän) | A | IPv4-adress | 1440 | 0 |
I projektmappen skapar du en ny mapp som heter local-files för att dela filer mellan n8n-instansen och värdsystemet:
mkdir local-files
Skapa Docker Compose-filen compose.yaml med nano compose.yaml och klistra in följande innehåll:
services:
traefik:
image: "traefik"
restart: always
command:
- "--api.insecure=true"
- "--providers.docker=true"
- "--providers.docker.exposedbydefault=false"
- "--entrypoints.web.address=:80"
- "--entrypoints.web.http.redirections.entryPoint.to=websecure"
- "--entrypoints.web.http.redirections.entrypoint.scheme=https"
- "--entrypoints.websecure.address=:443"
- "--certificatesresolvers.mytlschallenge.acme.tlschallenge=true"
- "--certificatesresolvers.mytlschallenge.acme.email=${SSL_EMAIL}"
- "--certificatesresolvers.mytlschallenge.acme.storage=/letsencrypt/acme.json"
ports:
- "80:80"
- "443:443"
volumes:
- traefik_data:/letsencrypt
- /var/run/docker.sock:/var/run/docker.sock:ro
n8n:
image: docker.n8n.io/n8nio/n8n
restart: always
ports:
- "127.0.0.1:5678:5678"
labels:
- traefik.enable=true
- traefik.http.routers.n8n.rule=Host(`${SUBDOMAIN}.${DOMAIN_NAME}`)
- traefik.http.routers.n8n.tls=true
- traefik.http.routers.n8n.entrypoints=web,websecure
- traefik.http.routers.n8n.tls.certresolver=mytlschallenge
- traefik.http.middlewares.n8n.headers.SSLRedirect=true
- traefik.http.middlewares.n8n.headers.STSSeconds=315360000
- traefik.http.middlewares.n8n.headers.browserXSSFilter=true
- traefik.http.middlewares.n8n.headers.contentTypeNosniff=true
- traefik.http.middlewares.n8n.headers.forceSTSHeader=true
- traefik.http.middlewares.n8n.headers.SSLHost=${DOMAIN_NAME}
- traefik.http.middlewares.n8n.headers.STSIncludeSubdomains=true
- traefik.http.middlewares.n8n.headers.STSPreload=true
- traefik.http.routers.n8n.middlewares=n8n@docker
environment:
- N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS=true
- N8N_HOST=${SUBDOMAIN}.${DOMAIN_NAME}
- N8N_PORT=5678
- N8N_PROTOCOL=https
- N8N_RUNNERS_ENABLED=true
- NODE_ENV=production
- WEBHOOK_URL=https://${SUBDOMAIN}.${DOMAIN_NAME}/
- GENERIC_TIMEZONE=${GENERIC_TIMEZONE}
- TZ=${GENERIC_TIMEZONE}
volumes:
- n8n_data:/home/node/.n8n
- ./local-files:/files
volumes:
n8n_data:
traefik_data:
Detta installerar n8n, utfärdar ett SSL-certifikat, konfigurerar och aktiverar n8n på domänen.
Starta n8n med:
sudo docker compose up -d
Du kan stoppa n8n med:
sudo docker compose stop
Efter start öppnar du n8n i webbläsaren via URL:en (eller värdnamnet om du använde det). Där måste du först skapa ett administratörskonto.
Kom ihåg lösenordet Kom ihåg ditt lösenord väl för framtida användning!
Efter det visas en kort enkät där du fyller i några grundläggande uppgifter.
Du kan också få gratis tillgång till vissa betalda funktioner genom att ange din e-post och få en licensnyckel via mail. Om du är intresserad, ange din e-post och begär licensnyckeln.
Licensnyckeln kommer direkt via mail. Kopiera den och klistra in den under Inställningar > Användning & Planer > Ange aktiveringsnyckel.
Därefter kan du gå direkt till instrumentpanelen och börja använda n8n!
Börja med en tom duk eller använd en färdig mall. Din n8n-installation är redo!
