2026.09.04
Self-hosting n8n: from one Docker node to production
The database, encryption key, webhook URL, reverse proxy and scaling decisions that are easy to miss when self-hosting n8n.
Start with the workload
n8n combines triggers, integrations, data processing and AI nodes in visual workflows. A single Docker node is enough for experiments. Production use requires the database, credential encryption, webhook routing and backups to be designed together.
Five production priorities
- Set a stable
N8N_ENCRYPTION_KEYand include it in a secure recovery process. - Configure the public domain and
WEBHOOK_URLso external services never receive an internal container address. - Use PostgreSQL for production data and back up both the database and encryption key.
- Put the editor behind an HTTPS reverse proxy instead of exposing the internal port.
- Move to queue mode with Redis and dedicated workers as execution concurrency grows.
Capacity planning
A typical automation server can start around 2 vCPU and 4 GB RAM. Browser automation, large files, local AI models and high concurrency can raise requirements quickly. Leave disk capacity for retries, execution history and logs.
Licensing note
n8n describes itself as fair-code. Review the Sustainable Use License for your business model before deployment; source availability does not mean every commercial use is unrestricted.