How to Self-Host Coolify and n8n on a VPS in 2026
Last updated: July 2026
Coolify turns a bare Linux box into a Heroku-style control panel: push a Git repo, click deploy, and it builds the Docker image, wires up the reverse proxy, and issues SSL for you. Pair it with n8n for workflow automation and a single VPS replaces a stack of paid platform-as-a-service subscriptions. This guide walks through a copy-paste Coolify and n8n deploy, the firewall rules that actually matter, and why a full-root KVM box is the right home for a vps for coolify self-hosting setup in 2026.
Why a VPS for Coolify self-hosting beats managed PaaS
Managed platforms bill per app, per dyno, and per add-on. The moment a side project grows a database, a background worker, and a cron job, the monthly total climbs past what a mid-tier VPS costs for the entire year. Coolify collapses that back into one predictable server bill because everything — apps, databases, queues, and automation — runs as Docker containers on hardware you rent outright. The tradeoff is that you own the operating system, and that is exactly what makes it work: Coolify needs full root and a real Docker daemon, which rules out the locked-down shared hosting most PaaS refugees are escaping. Every X-Zone plan ships full root on KVM virtualization, so the Docker engine Coolify drives runs at the kernel level with no container-in-container compromises.
Sizing the box: what a Coolify + n8n stack actually needs
Coolify itself is lightweight, but it is a build server too. Every deploy spins up a Docker build, and n8n keeps a Node process resident plus a database for execution history. A 2GB box will install Coolify, but the first parallel build will swap and stall. A realistic floor is 4GB RAM and 2 vCPU, which comfortably runs the Coolify control plane, n8n, a Postgres or Redis instance, and a couple of small apps. Room to grow matters more than a rock-bottom price, because self-hosters almost always add a third and fourth service within a month.
| Plan | RAM / vCPU / Storage | Price | Good for |
|---|---|---|---|
| Nano | 2GB / 1 vCPU / 40GB | EUR4/mo | Trying Coolify only |
| Micro | 4GB / 2 vCPU / 80GB | EUR6/mo | Coolify + n8n floor |
| Starter | 8GB / 2 vCPU / 120GB | EUR10/mo | Coolify + n8n + several apps |
| Basic | 16GB / 4 vCPU / 160GB | EUR16/mo | Busy multi-app production |
All tiers use NVMe storage and a 1 Gbps unmetered port, so build artifacts write fast and there is no bandwidth meter ticking while n8n hammers external APIs. The Micro tier is the honest starting point; the Starter is where most self-hosters land once real traffic arrives. Full specs and larger tiers are on the VPS hosting page, and workloads that eventually outgrow a single VPS can graduate to a dedicated server.
Deploying Coolify: the copy-paste part
Spin up a fresh Ubuntu or Debian VPS — X-Zone deploys in under 60 seconds, so the box is ready before the coffee is. SSH in as root and run the official one-line installer:
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash— this pulls Docker, sets up the Coolify containers, and prints a dashboard URL.- Open
http://YOUR_SERVER_IP:8000and create the admin account immediately, before anyone else finds the port. - Point a domain's A record at the server, add it under Settings → Instance Domain, and Coolify provisions a Let's Encrypt certificate automatically.
From there, adding an app is genuinely one-click PaaS on a VPS: connect a GitHub or GitLab repo, pick the branch, and Coolify's build packs detect the framework, build the image, and route traffic through its bundled Traefik proxy. This is the same push-to-deploy loop that Heroku popularized, running on a box you control. Because the whole stack runs on full-root KVM with a real Docker daemon, there are no container-in-container limits on the images Coolify builds.
Adding n8n as a self-hosted workflow engine
The best VPS for n8n is the same one already running Coolify, because Coolify deploys n8n as a managed service in a few clicks. Use the built-in service template or a one-service Docker Compose:
- In Coolify, choose New Resource → Service and select the n8n template, or paste a Compose file that pins the
n8nio/n8nimage with a persistent volume for/home/node/.n8n. - Set
N8N_HOST,WEBHOOK_URL, and a strongN8N_ENCRYPTION_KEYin the environment tab so credentials survive restarts. - Attach a Postgres database (another one-click Coolify resource) instead of the default SQLite once workflows get serious.
Because Coolify owns the reverse proxy, n8n gets its own subdomain and SSL with no manual nginx editing. A 99.9% uptime SLA underneath means always-on automation workflows keep firing on schedule rather than dying with the host.
Locking down the firewall — the 40 minutes people skip
This is where self-hosting bites first-timers. A fresh install leaves the Coolify dashboard on port 8000 and, worse, leaves internal service ports reachable from the internet. The minimum viable lockdown:
- Allow only 22 (SSH), 80, and 443 inbound via
ufw; deny everything else by default. - Access the Coolify dashboard through its HTTPS domain, not the raw
:8000port, and close 8000 externally once the domain works. - Never expose n8n or database ports directly — let Coolify's proxy be the only public entry point.
- Add an SSH key, disable password login, and keep the OS patched.
None of this is hard, but getting the ordering wrong — closing a port before the domain resolves, or locking yourself out of SSH — is exactly the kind of 40-minute detour that turns a fun evening into a frustrating one. Every X-Zone plan also sits behind L3/4/7 DDoS mitigation, so the public entry point Coolify exposes is shielded before traffic ever reaches the firewall.
TCO: self-hosted VPS versus paid PaaS
The financial case for a vps for coolify self-hosting build is blunt. Managed platforms meter per service; a VPS is one flat line no matter how many apps Coolify packs onto it.
| Setup | What you run | Monthly cost |
|---|---|---|
| Paid PaaS (per-app pricing) | App dyno + database + worker + automation add-on | Climbs with every service added |
| X-Zone Micro VPS + Coolify | Coolify + n8n + database + several apps, unlimited count | EUR6/mo flat |
| X-Zone Starter VPS + Coolify | Same, with headroom for real traffic | EUR10/mo flat |
Because billing is hourly and capped at the monthly rate, an experiment that runs for a weekend costs a few cents, and a box left running all month never exceeds the flat price. EU datacenter cities such as Frankfurt and Amsterdam keep self-hosted apps under GDPR jurisdiction, which paid US-based PaaS rarely guarantees. This is a genuine Heroku alternative VPS: same deploy ergonomics, a fraction of the recurring cost, and none of the per-service surprises.
Verdict
Coolify plus n8n on a single VPS is the cleanest way to reclaim the push-to-deploy convenience of a paid PaaS without the per-app bill, and X-Zone Servers is built for exactly this workload: full root on KVM, NVMe storage, 1 Gbps unmetered bandwidth, sub-60-second deploys, a 99.9% uptime SLA, and EU cities for GDPR peace of mind. Start on the Micro tier at EUR6/mo, or the Starter at EUR10/mo if real traffic is already on the way — and skip the firewall detour by launching on a spec-matched plan that is ready the moment the installer runs.