Running n8n in a single container with SQLite is fine for kicking the tires. The moment you put it in front of real traffic, that setup breaks down. Fairwinds wrote up exactly what it takes to run n8n properly on Amazon EKS, and the dependency list alone is a useful reality check.
What production n8n actually needs
According to Fairwinds, a production-ready n8n deployment on EKS requires all of the following:
- Separate worker and webhook processor workloads
- PostgreSQL as the backing database (not SQLite)
- Redis for queue coordination between workers
- Object storage (S3) for binary data
- External secrets management
- Ingress routing
- An upgrade plan that preserves workflow execution history
One detail worth noting: the official Helm chart uses a different workload model, with the main process running as a Deployment and persistence relying on a single shared PVC. Fairwinds diverged from that model in their configuration.
Why this matters for small teams
If you are self-hosting n8n as a cost alternative to Zapier or Make, this is the architecture you are signing up for at scale. The Fairwinds writeup is a useful reference before you commit to the infrastructure work, or before you decide the managed cloud version is worth the price instead.
Full breakdown at the Fairwinds blog.
