Deploying n8n with Coolify: the self-hosted PaaS that skips manual Traefik and Docker Compose
Published 18 August 2026 · 6 min read
Self-hosting n8n usually means writing a docker-compose.yml, wiring up Traefik or Caddy for HTTPS, managing PostgreSQL, pinning versions, and watching certificates. None of that is hard — our Docker and Traefik/Caddy guides cover every step — but it's real operational work you end up redoing on every new server. Coolify, an open-source self-hosted PaaS (Apache 2.0 license), automates that layer: you click an official n8n template, push code or an image, and Coolify handles the reverse proxy, the TLS certificate, and restarting containers. This guide covers installing Coolify, deploying n8n in production on top of it, and the settings you should never leave at their defaults.
Coolify, in one sentence
Coolify is a self-hosted alternative to Heroku or Vercel: a web interface that drives Docker on one or more servers, with a catalog of several hundred one-click templates (each one a docker-compose.yml maintained by the project), git-push deployment with automatic builds, and built-in Traefik for HTTPS and domain-based routing. The 2026 releases added preview deployments (a disposable instance per pull request) and structured audit logging of deployment actions — useful as soon as more than one person touches the same server.
This deployment model — push code, let the tool build and publish it automatically — is exactly what software engineering research calls continuous delivery. A landmark study by Forsgren and Humble, “The Role of Continuous Delivery in IT and Organizational Performance”, surveying close to 5,000 IT professionals, shows that organizations practicing continuous delivery report better deployment performance (frequency, lead time, failure rate) and lower burnout among technical teams — precisely the friction a tool like Coolify aims to reduce for a small team without a dedicated DevOps hire.
Installing Coolify on your VPS
Coolify is installed with an official script run as root on a freshly provisioned Ubuntu or Debian VPS:
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash
Budget at least 2 GB of RAM for Coolify itself — see our VPS sizing guide if n8n is meant to share the same machine, or you'll run out of memory the first time a heavier AI workflow runs. Once installation finishes, the Coolify dashboard is reachable on port 8000 of your server; the very first thing to do is lock it down (see the security section below) before deploying anything to it.
Deploying n8n from the official template
In the dashboard, Add New Resource → Services offers n8n as a ready-made template: Coolify pulls the docker-compose.yml maintained by the project, asks for the required variables, and deploys. This is where attention matters — the default template favors simplicity, not necessarily production settings.
- Switch to PostgreSQL, not the default SQLite database, as soon as the instance needs to run seriously — the same reasoning as any regular Docker install, covered in our n8n Docker installation guide.
- Pin
N8N_ENCRYPTION_KEYto a value generated once and stored safely: it's the key that decrypts every one of your credentials. Lose it, and you lose access to every saved credential — our PostgreSQL backup guide explains why it must be backed up separately from the database. - Check
WEBHOOK_URL: Coolify automatically assigns a subdomain and a certificate, but n8n still needs to explicitly know that public HTTPS URL to generate correct webhooks — the same pitfall as behind a manual reverse proxy. - Pin the image version instead of leaving the
latesttag: Coolify redeploys with a single click, which makes an unplanned update all the easier to trigger by accident.
Coolify's n8n template went through several fixes in 2026, notably around health checks tied to task runners — a reminder that, just like n8n itself, it pays to keep Coolify up to date before a production deployment rather than freezing an old template version.
Queue mode and backups: Coolify doesn't replace discipline
Coolify simplifies deployment, not the architecture. If your instance absorbs webhook spikes or overlapping long-running AI workflows, queue mode with Redis is still the right tool: deploy a Redis service in Coolify next to n8n, then configure the workers in the same docker-compose.yml or a separate service. The scaling thresholds (daily execution count) don't change based on the deployment tool.
The same applies to backups: Coolify offers scheduled backups for its managed databases, a good complement but not a substitute for a real, tested procedure. Our PostgreSQL backup and restore guide for n8n applies unchanged: the PostgreSQL database Coolify deploys is a PostgreSQL container like any other, with the same need for regular pg_dump, retention, and above all a restore tested before you actually need it.
Securing the Coolify dashboard — not just n8n
One point that's often underestimated: Coolify directly drives the Docker engine of the machine hosting it. Unauthorized access to its dashboard isn't access to just one application among others — it's effectively access to every container on the server, n8n included, with its credentials decrypted in memory. An experimental study by Lee, Kwon, and Lee published in Electronics (MDPI), “Experimental Analysis of Security Attacks for Docker Container Communications”, documents in detail how a single compromised entry point in a Docker environment enables lateral movement between containers that, in theory, should be isolated from one another.
In practice, three habits go a long way: restrict access to port 8000 (the dashboard) with a firewall or a VPN rather than exposing it publicly, enable the two-factor authentication Coolify offers natively, and give each collaborator their own account rather than a shared login — Coolify's audit log is only useful if every action can be traced to a specific person.
Coolify, Dokploy, or Kubernetes: which one for n8n
Coolify isn't alone in this space. Dokploy targets the same need with a more transparent philosophy — you edit Traefik rules directly rather than having everything hidden behind the interface — and a source-available license that restricts some advanced features around resale, versus Coolify's unrestricted Apache 2.0. For n8n, the choice between the two mostly comes down to interface preference: both cover Docker deployment, automatic HTTPS, and git-based deployment.
Against Kubernetes and Helm, the line is clearer: Coolify and Dokploy target one or a few servers with simple operations, while Kubernetes brings fine-grained worker autoscaling and multi-node high availability — at the cost of substantially higher operational complexity. An agency hosting one n8n instance per client will find Coolify a solid middle ground: a single dashboard to oversee several isolated instances, without the overhead of administering a Kubernetes cluster for a few dozen containers.
Updating n8n under Coolify
The principles from our n8n Docker update guide apply unchanged: back up the database before any update, read the release notes to spot migrations or breaking changes, and never skip several major versions at once. Coolify adds real convenience — changing the image tag and clicking redeploy — but that ease doesn't replace the prior backup or reading the release notes: it just makes it more tempting to skip that step, which you shouldn't.
Going further
Once the n8n instance is deployed and secured, the next step is what runs inside it. The Inbox AI Pack (€79) and the RAG Assistant Pack (€119) import in two clicks onto an instance freshly set up with Coolify, and the Complete FlowKit Bundle (€269) brings together all three packs, including the Compliance & Audit Pack (€149), to fully equip a self-hosted instance without starting from a blank page.
FAQ
Frequently asked questions
Does Coolify completely replace a manual reverse proxy like Traefik or Caddy?
Yes, in the sense that Coolify runs Traefik under the hood and fully automates service discovery and Let's Encrypt certificate renewal — you no longer write Docker labels or a Caddyfile by hand. If you want finer control over the reverse proxy configuration, or you're only hosting a single service, our guide on configuring Traefik or Caddy in front of n8n remains the best reference for understanding what Coolify is doing for you behind the scenes.
Can n8n's queue mode (Redis + workers) be enabled on Coolify?
Yes. Nothing stops you from deploying a Redis service alongside n8n in Coolify and configuring the EXECUTIONS_MODE, QUEUE_BULL_REDIS_HOST variables and the workers in the same docker-compose.yml or a separate service, exactly as on a plain VPS. Coolify makes deploying the building blocks easier, not the architecture itself — the scaling thresholds and queue-mode logic stay the same ones covered in our dedicated guide.
Coolify or Kubernetes with Helm: which one for hosting n8n?
Coolify fits a single n8n instance or a handful of instances on one or two VPS, with a simple interface and git-push deployment. Kubernetes with n8n's official Helm chart becomes worthwhile beyond that: fine-grained worker autoscaling, multi-node high availability, or an existing Kubernetes constraint. For the large majority of SMEs and freelancers running n8n self-hosted, Coolify covers the need with far less operational complexity.
Should the Coolify dashboard be exposed on the public Internet?
No, avoid it if at all possible. Coolify directly controls the Docker engine on the machine it runs on: unauthorized access to its dashboard amounts to near-complete access to the server. Restrict access to the admin port with a firewall or a VPN rather than exposing it publicly, and always enable the two-factor authentication Coolify offers natively.
Bundle FlowKit Complet
€269