# Coolify
Coolify is an [[Open Source]] (Apache 2.0) platform that turns your own servers into something that feels like Heroku, Netlify or [[Vercel]]. You connect a server over [[Secure Shell (SSH)]], point Coolify to a [[Git]] repository, and it builds and deploys the app, issues the TLS certificate, and routes the domain to it. It's built with [[PHP]] and [[Laravel]] by coollabs, and it's one of the most popular self-hosting projects out there (60K+ stars on [[GitHub]]).
This is NOT a container dashboard like [[Portainer]]. It's a Platform as a Service (PaaS). The container management is a side effect. The real job is deployment.
## What it does
- **Deploys from many sources**: Git repositories (GitHub, GitLab, Bitbucket, Gitea), Dockerfiles, [[Docker Compose]] files and prebuilt images
- **Push to deploy**: webhooks rebuild and redeploy the app when you push
- **One-click services**: 280+ templates for common self-hosted apps (databases, analytics, CMSs, [[n8n]], etc)
- **Databases**: [[PostgreSQL]], MySQL, [[Redis]] and others, with scheduled backups to S3-compatible storage
- **Reverse proxy and TLS**: Traefik by default (Caddy is an option), with automatic certificates
- **Multiple servers**: one Coolify instance can manage many servers
- **Coolify Cloud**: a paid, hosted control plane if you don't want to run Coolify itself; your apps still run on your servers
## The tradeoff
Coolify takes over the box. It installs its own proxy on ports 80 and 443, generates its own labels and configuration, and expects to be the one deploying things. That's great when you start from an empty [[Virtual Private Server (VPS)]] and want the Vercel experience for a few euros a month on [[Hetzner]].
It's a lot less great when you already have a setup. An nginx on the host and compose projects deployed by a script won't live well next to it. And it adds a big moving part: if Coolify breaks, or you want to leave it, you have to untangle what it generated.
## My take
I considered Coolify for the Knowii infrastructure, and decided against it. I went with plain [[Docker Compose]] projects behind nginx, deployed by a script. The main reason: the production setup is also the reference deployment for people who want to self-host, and I didn't want a control plane between them and their compose files.
If you want push-to-deploy without thinking about proxies and certificates, Coolify is one of the best options available. Just know what you're giving up: control and simplicity. Dokploy is its closest alternative.
## References
- https://coolify.io/
- https://github.com/coollabsio/coolify
- https://coolify.io/docs/knowledge-base/server/proxies
## Related
- [[Portainer]]
- [[Dockge]]
- [[Arcane]]
- [[Docker]]
- [[Docker Compose]]
- [[Self-hosting]]
- [[Virtual Private Server (VPS)]]
- [[Hetzner]]
- [[Vercel]]
- [[DevOps]]