Coolify:自托管的 Vercel,把任何项目一键部署到自己的 VPS
解决什么问题
你有一台 VPS,想部署多个项目:一个 Next.js 前端、一个 Go API、一个 Python 爬虫……每个项目都要写 Dockerfile、docker-compose、Nginx 配置、手动申请 HTTPS 证书——重复劳动很多。
Coolify 是开源的自托管 PaaS,功能对标 Heroku / Vercel / Railway,但运行在你自己的 VPS 上:
- 连接 GitHub 仓库,push 代码自动重新部署
- 支持 Node.js / Python / Go / PHP / 静态网站 / Docker / Docker Compose
- 自动签发 HTTPS 证书(Let's Encrypt)
- 数据库一键创建(PostgreSQL / MySQL / Redis / MongoDB)
- 一个界面管理多台服务器和多个项目
关键词(可以展开学习): PaaS、Nixpacks(自动检测构建方式)、Traefik 反向代理、Let's Encrypt
准备什么
一台 Linux VPS:
| 最低 | 推荐 | |
|---|---|---|
| CPU | 1 核 | 2 核+ |
| 内存 | 2 GB | 4 GB |
| 系统 | Ubuntu 22.04 | Ubuntu 22.04 / Debian 12 |
→ 还没有 VPS?见《用 $6 VPS 搭建你的第一个服务器》
安装 Coolify
SSH 进入 VPS,运行一条命令:
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash
安装过程约 3–5 分钟,自动安装 Docker 并启动 Coolify。
完成后打开浏览器访问:
http://你的VPS_IP:8000
注册管理员账号(只有第一次访问可以注册,之后只能用已有账号登录)。
如果 8000 端口访问不了,检查防火墙:
sudo ufw allow 8000
连接 GitHub 仓库
Settings → Source → Add → GitHub App
按提示创建 GitHub App 并授权给你的账号或组织。配置完成后,Coolify 能读取你的仓库列表,并自动创建 Webhook——push 代码时会自动触发重新部署。
部署第一个项目
Projects → New Project → New Resource → Application
- Source:选 GitHub 仓库和分支
- 自动检测:Coolify 用 Nixpacks 识别框架(Next.js / Vite / Go / Django 等),大多数项目不需要写 Dockerfile
- 域名:填你的域名,例如
app.example.com(需要提前把 DNS A 记录指向 VPS IP) - 环境变量:在 Environment Variables 标签填入
.env里的内容 - 点 Deploy
部署过程可以实时看构建日志。第一次成功后,之后每次 push 到对应分支都会自动触发重部署。
一键创建数据库
不用自己写 docker-compose 跑 PostgreSQL:
Projects → New Resource → Database → PostgreSQL
选版本,填密码,点创建。几秒钟后数据库就绪,Coolify 给出连接字符串:
postgresql://postgres:your_password@localhost:5432/postgres
在 Application 的环境变量里直接用这个字符串。
其他支持的数据库:MySQL、MariaDB、Redis、MongoDB、ClickHouse、DragonFly。
HTTPS 自动配置
Coolify 内置 Traefik 作为反向代理,自动处理 Let's Encrypt 证书申请和续期。
前提只有一个:域名的 DNS A 记录指向你的 VPS IP。配置好域名后,Coolify 自动签发证书,无需额外操作。
部署 Docker Compose 项目
如果你的项目已经有 docker-compose.yml:
New Resource → Docker Compose
粘贴或上传你的 compose 文件,Coolify 会按照文件跑容器,并帮你处理域名和 HTTPS。
和手动管理相比
| Coolify | 手动 docker-compose + Nginx | |
|---|---|---|
| 部署新项目 | 点几下,几分钟 | 写配置、测试、调试,可能要一小时 |
| HTTPS | 自动 | 手动配置 Certbot 或 Caddy |
| 多项目管理 | 统一界面 | 多个目录、多个配置文件 |
| 学习价值 | 低(封装太好) | 高(理解底层发生了什么) |
建议:先手动跑通一个项目,理解 Docker Compose 和反向代理是怎么工作的,再用 Coolify 提效。白夜网站本身就是手动 docker-compose 管理的——先搞懂底层才是真的会了。
常见问题
构建失败,不知道哪里出了问题?
进 Application → Deployments → 点具体的部署记录 → 查看完整日志,错误信息通常在最后几行。
Nixpacks 检测框架不对?
在 Application 设置里手动选择 Build Pack,或者直接写一个 Dockerfile 放在项目根目录,Coolify 会优先用它。
能管理已有的 Docker 容器吗?
可以。在 Servers 里连接你的服务器后,Coolify 能看到服务器上所有运行中的容器,但无法"接管"非 Coolify 创建的容器,只能监控。
想给 Coolify 本身加域名?
Settings → Instance → 填入域名,Coolify 会自动给自己的控制台配 HTTPS。配好后不再需要 :8000 端口。