所有文章
发布于 2026 年 5 月 6 日· 10 分钟阅读

Coolify:自托管的 Vercel,把任何项目一键部署到自己的 VPS

CoolifyPaaSDocker自托管部署VPSCI/CD

解决什么问题

你有一台 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

  1. Source:选 GitHub 仓库和分支
  2. 自动检测:Coolify 用 Nixpacks 识别框架(Next.js / Vite / Go / Django 等),大多数项目不需要写 Dockerfile
  3. 域名:填你的域名,例如 app.example.com(需要提前把 DNS A 记录指向 VPS IP)
  4. 环境变量:在 Environment Variables 标签填入 .env 里的内容
  5. Deploy

Coolify 部署第一个应用流程图

部署过程可以实时看构建日志。第一次成功后,之后每次 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 端口。