n8n op je eigen server draaien (self-hosting)
n8n is een automatiseringstool die apps met elkaar verbindt en waarmee je workflows bouwt. Je kunt hem met Docker op je eigen VPS draaien. De officiële documentatie beschrijft een installatie met Docker Compose en raadt zelf hosten aan voor mensen met technische ervaring. De installatiegidsen noemen geen cijfer voor CPU, RAM of schijf, dus het is zinvol met een kleine server te beginnen en op te schalen terwijl je meekijkt.
Dit artikel behandelt de licentie, de installatiestappen, de belangrijke instellingen, back-ups en updates.
Wat bouw je met n8n?
Een workflow in n8n is een trigger plus de stappen die eraan hangen. De trigger kan een schema, een webhook of een gebeurtenis in een andere app zijn. Typische voorbeelden: een ingediend formulier naar een spreadsheet schrijven, het team op de hoogte brengen van een nieuwe bestelling, of elke ochtend een rapport verzamelen en mailen. Je bouwt workflows in een visuele editor in de browser. Code schrijven is niet nodig, maar je kunt een codestap toevoegen als je dat wilt.
Waarom op je eigen server draaien?
- Je workflows en opgeslagen verbindingsgegevens blijven op je eigen server.
- Geplande workflows blijven op de server draaien terwijl je eigen computer uit staat, en webhooks kunnen ze van buitenaf starten.
- Je gebruikslimiet wordt bepaald door de kracht van je server, en is die niet genoeg, dan schaal je de server op.
- Daar staat tegenover dat het onderhoud van jou is: updates, back-ups en beveiliging.
Licentie: wat staat gratis gebruik toe?
n8n is niet open source. Zelf noemt het zich "fair-code"-software. De broncode is beschikbaar, maar de Sustainable Use License beperkt commercieel gebruik. Volgens de officiële licentiepagina mag je het gratis gebruiken voor de interne bedrijfsvoering van je bedrijf en voor persoonlijke of niet-commerciële projecten. Workflows bouwen voor klanten als betaalde advisering mag ook, zolang de klanten zelf geen toegang tot n8n krijgen. Een dienst aanbieden waarbij klanten inloggen op n8n om hun eigen workflows te bouwen of te bewerken (n8n als dienst hosten) vereist een commerciële licentie. Vraag bij twijfelgevallen het licentieteam van n8n.
Installatiestappen
Deze stappen volgen de officiële Docker Compose-gids. De gids haalt het HTTPS-certificaat op en vernieuwt het via een reverse proxy die Traefik heet.
- Zet een Linux-server klaar met Docker Engine en Docker Compose geïnstalleerd. Controleer met
docker --versionendocker compose version. - Voeg een A-record toe dat een subdomein van je domein (bijvoorbeeld
n8n.example.com) naar het IP-adres van de server laat wijzen. Je eigen domein koppelen leidt je erdoorheen. - Maak op de server de bestanden
.envencompose.yamlaan uit de officiële gids. - Vul in
.envDOMAIN_NAME,SUBDOMAIN,GENERIC_TIMEZONEenSSL_EMAILin. GebruikEurope/Istanbulals tijdzone. Laat je die weg, dan is de standaard New York. - Start hem:
docker compose up -d - Open je subdomein in een browser en maak meteen het eigenaarsaccount aan. Wie dat scherm als eerste invult, wordt de eigenaar.
Instellingen die je moet kennen
| Variabele | Wat het doet |
|---|---|
N8N_HOST, N8N_PROTOCOL | De hostnaam waarop n8n draait en het protocol (https) |
N8N_WEBHOOK_URL | Achter een reverse proxy kan n8n zijn adres van buitenaf niet zelf bepalen. Vul je openbare HTTPS-adres in zodat webhook-URL's goed worden getoond. De oude naam WEBHOOK_URL werkt in actuele versies nog, maar is verouderd. In een oudere versie geldt alleen de oude naam, controleer dus de documentatie van jouw versie. |
GENERIC_TIMEZONE, TZ | De tijdzone van de planningsnodes |
N8N_ENCRYPTION_KEY | De sleutel die opgeslagen verbindingsgegevens versleutelt |
De Webhook-node heeft twee adressen: het testadres werkt terwijl je de workflow bewerkt en het productieadres werkt zodra je hem activeert. Geef externe diensten het productieadres. Het begin van het adres komt uit de waarde van N8N_WEBHOOK_URL, dus is die waarde fout, dan kunnen externe diensten je workflow niet bereiken.
De versleutelingssleutel en back-ups
Bij de eerste start maakt n8n een willekeurige versleutelingssleutel aan en bewaart die in zijn gegevensmap (/home/node/.n8n). Je opgeslagen verbindingen zijn ermee versleuteld. Verbindingsgegevens in een herstelde database kunnen zonder de sleutel niet worden ontsleuteld. Bewaar een aparte kopie van de sleutel.
- Wat je moet back-uppen: Het gegevensvolume (
n8n_data) bevat de standaarddatabase SQLite en de sleutel. Stop n8n voordat je kopieert. Gebruik je PostgreSQL, maak dan met de eigen tools een aparte back-up van de database. - Snelle export: De n8n-opdrachten draaien in de container.
docker compose exec n8n n8n export:workflow --backup --output=/home/node/.n8n/backups/workflows/endocker compose exec n8n n8n export:credentials --backup --output=/home/node/.n8n/backups/credentials/schrijven workflows en verbindingen naar het gegevensvolume. Gebruikers, uitvoeringsgeschiedenis en instellingen zitten er niet bij, dus het is niet genoeg voor een volledig herstel. - Back-up van de server: Seturack maakt elke nacht een back-up van je server en bewaart de laatste 7 dagen. Dat omvat ook de gegevens van n8n, maar het is verstandig je kritieke workflows apart te exporteren.
Resources en database
De officiële installatiegidsen noemen geen cijfer voor CPU of geheugen. Als vuistregel draaien lichte en weinig voorkomende workflows op een kleine server, terwijl workflows die grote bestanden of veel gegevens verwerken geheugen nodig hebben. Bekijk het echte gebruik van de container met docker stats. De standaarddatabase is SQLite. Bij zwaar gebruik stap je over op PostgreSQL met DB_TYPE=postgresdb, en je houdt het volume van de gegevensmap.
Is de server niet genoeg, schaal hem dan op in het paneel. Je IP-adres en gegevens blijven hetzelfde en je webhook-URL's veranderen niet.
Bijwerken
De officiële gids beschrijft het bijwerken in drie opdrachten: docker compose pull, docker compose down en docker compose up -d. Maak eerst een back-up en lees de release notes. Updates van het besturingssysteem en de applicaties zijn na de installatie van jou.
Beveiliging
- Open n8n alleen via HTTPS. De officiële gids hanteert dezelfde aanpak.
- Maak direct na de installatie het eigenaarsaccount aan en kies een sterk wachtwoord.
- Houd in de firewall alleen poort 22, 80 en 443 open. Omdat Docker ufw-regels overslaat voor de poorten die het publiceert, publiceer je poort 5678 van n8n niet naar buiten.
Wil je deze stappen overslaan, kies dan je server met n8n voorgeïnstalleerd. Installeer je het zelf, begin dan bij een server met Docker geïnstalleerd.
Reacties0
Nog geen reacties
Deel als eerste uw gedachten.
Meld u aan of registreer u om een reactie te plaatsen.