Coolify指南:65k星自托管PaaS,Vercel/Heroku/Netlify开源替代

📌 项目:https://github.com/coollabsio/coolify | 星数:64862 | 语言:PHP | 协议:Apache-2.0 | 更新:2026-10-26

📋 项目简介

Coolify是coollabsio开源的自托管PaaS,64.9k颗星,PHP编写。定位是"开源自托管的Vercel/Heroku/Netlify"——在自己的服务器上一键部署应用,Git推送自动构建上线,自动HTTPS,托管数据库,无需Kubernetes运维。Vercel/Heroku好用但贵(按用量/带宽计费,规模一大月费失控)且数据在别人服务器;Coolify自托管一次服务器成本无限应用,数据自控。它把"推送代码→自动构建→部署上线→自动SSL→监控告警"全流程自动化,开发者只管写代码,运维交给Coolify。6.5万星说明自托管PaaS是替代云厂商锁定的强需求。

相关工具与方向,可参考Ollama Local Llm Deploy Guide;Lobechat Deploy Tutorial;Deepseek Local Deploy Api Guide。

🔧 核心功能

一键部署多类应用:Coolify支持部署多种应用:静态站(Next.js/Vite/Astro/Hugo静态导出)、Node.js(Express/Next/Nuxt/Fastify)、PHP/Laravel、Python(Django/Flask/FastAPI)、Go、Rust、Dockerfile(任何容器)、Docker Compose(多容器编排)。Git连接GitHub/GitLab/Bitbucket,推送即触发构建部署。Nixpacks构建器自动识别语言生成镜像,无需写Dockerfile。也支持部署预构建镜像(一键拉Docker Hub/私有仓库镜像)。覆盖从静态站到全栈到微服务的部署需求。

数据库与自动化运维:Coolify托管数据库——PostgreSQL/MySQL/MariaDB/Redis/MongoDB/KeyDB等,一键创建带备份。自动SSL(Let's Encrypt)一键开HTTPS。环境变量/密钥管理。预览部署(PR分支自动部署临时环境供review)。多服务器——一台Coolify管理多台服务器部署,按服务器资源分布应用。自动备份到S3/本地。Web终端SSH进容器调试。健康检查与自动重启。这些把Kubernetes的活用更简单的方式做了。

开源免费与团队协作:Coolify核心完全开源(自托管免费),团队功能含多用户/项目/团队权限,可做企业内部平台。Cloud版(Coolify托管Coolify)付费但省运维。Git webhook集成PR/分支部署策略。资源监控(CPU/内存/磁盘)可视化。命令执行/日志查看全在Web。相比Vercel按请求/带宽计费,Coolify自托管只付服务器固定成本,高流量应用省90%+。

⚖️ 优缺点

✅ 优势❌ 劣势
Git推送自动部署复杂应用仍需Dockerfile
多语言Nixpacks自动构建无全球边缘CDN(需自配)
自动SSL与数据库托管PHP后端非主流
多服务器统一管理分布式/伸缩不如K8s
自托管免费无限应用备份配置需懂存储

🔧 适用场景

❓ 常见问题

Coolify和Vercel比?

功能上Coolify覆盖Vercel核心——Git推送部署、自动SSL、预览环境、环境变量、数据库。优势是自托管(数据自控)、固定服务器成本不按量计费(高流量省90%+)、可部署任何Docker应用(不限前端框架)。劣势是无全球CDN边缘节点(Vercel有全球网络)、构建速度略慢、需自己运维服务器。建议:高流量/数据自控/任意应用→Coolify;前端/全球CDN/零运维→Vercel。

支持哪些应用?

静态站(Next.js静态/Vite/Astro/Hugo)、Node.js(Next/Nuxt/Express/Fastify)、PHP/Laravel、Python(Django/Flask/FastAPI)、Go、Rust、Ruby、Java、Dockerfile(任何容器化应用)、Docker Compose(多容器)。Nixpacks自动识别语言生成镜像,复杂场景可写Dockerfile。也支持部署预构建Docker镜像。基本任何能在容器里跑的应用都能部署。

如何部署?

Coolify本身用Docker部署:curl安装脚本一键装到服务器,访问Web界面。然后在Coolify里:1)连Git仓库(GitHub/GitLab/Bitbucket,授权或token);2)选构建类型(Nixpacks自动/Dockerfile/镜像);3)配环境变量/域名;4)点Deploy,自动构建→部署→SSL。后续推送代码自动触发。也可连多台服务器,把应用部署到不同服务器。整个流程比Vercel多一步服务器准备,但后续体验一致。