Self-hosted n8n on a client’s own server
n8n set up from a bare cloud server to a running stack, with Postgres, Redis and nginx, and restart tested through a reboot.
< 1 minto recover after a full reboot, tested
The situation
A client needed their own n8n instance rather than a hosted plan, with control over the infrastructure it runs on.
What I built
- A Google Cloud server with a static IP, provisioned end to end: disk sizing, swap, Docker, Node, nginx and firewall rules.
- A Docker stack running n8n with Postgres and Redis.
- Automatic start through a systemd unit, with the reboot recovery path tested and confirmed healthy in under a minute.
- An nginx site on a dedicated subdomain.
Why self-host
Self-hosting keeps workflow data on infrastructure you control, and the cost doesn’t depend on how many times a flow runs. The trade-off is that someone has to look after the server, which is worth deciding before you choose.
Stack
GCP Compute EngineDocker Composen8nPostgresRedisnginxsystemdufw
Related service: n8n Automation.
Have a system that needs to talk to HubSpot?
Book a free 30-minute call. Bring the messy version and I’ll help you work out what to fix first.
Book a call