Coolify 部署教程:自托管你的 Vercel / Heroku 替代品
如果你受够了 PaaS 平台(Heroku、Vercel、Netlify)越来越贵的价格,又不想自己一点点写 Dockerfile、写 Compose、写 CI 脚本,那 Coolify 可能正好踩中你的需求。它是一个开源自托管的 PaaS 项目,口号很直接——”用你自己的服务器,体验类似云平台的体验”。底层它把 Docker、Docker Compose、Traefik、Caddy 之类的工具串起来,给你一个 UI 来管理服务器、应用、数据库。
下面这篇教程会带你从零开始:准备一台干净的服务器,到跑通第一个应用,并搞定 HTTPS。

前置准备
开始之前,你需要准备这些东西:
- 一台干净的 Linux 服务器:Ubuntu、Debian 都行,建议用最新稳定版。Coolify 也可以跑在 VPS、独立服务器、树莓派、甚至家里的旧电脑上,只要能 SSH 上去。
- Root 权限:官方的一键安装脚本需要 root 来装 Docker、配置网络。普通 sudo 用户也行,但教程里假设你直接是 root。
- 建议至少 2GB 内存:Coolify 本身加上 Traefik、数据库等服务会占一部分内存,再加上你部署的应用,2G 是比较舒服的下限。1G 也能跑,但会比较紧。
- 一个能访问的公网 IP:如果要开 HTTPS、绑定域名,这台机器必须能从公网访问。
- 防火墙放行 8000 端口:这是 Coolify 的 Web UI 入口。
如果你是第一次租 VPS,可以优先选择 Hetzner、Contabo、Hostinger 这类对开发者比较友好的厂商。README 里也提到 Coolify 推荐「一台跑 Coolify,再加一台或多台跑应用」的架构,所以后续你完全可以把 Coolify 和应用分散开。
一键安装
准备好服务器之后,安装只有一行命令:
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | bash
这个脚本会自动完成几个事情:检测系统、安装 Docker 和 Docker Compose(如果还没有)、拉取 Coolify 需要的镜像、启动相关容器。整个过程通常几分钟内可以完成。
> [!TIP]
> 如果你想看脚本到底干了什么,可以先在浏览器里打开 https://cdn.coollabs.io/coolify/install.sh 看一下源码,再决定要不要直接 pipe 给 bash。
安装过程中日志会滚动输出,等看到类似「Coolify is running at http://your-ip:8000」的提示,就可以打开浏览器了。安装脚本的源码也在官方仓库的 scripts/install.sh 里,方便审计。
首次访问与管理员账号
在浏览器里输入 http://你的服务器IP:8000,会进入 Coolify 的初始设置向导。第一步就是创建一个管理员账号——这是第一个用户,后续也能通过后台再邀请其他人。
设置完成后,你会进入 Coolify 的主仪表盘。这里有几个区域你很快会用到:
- Servers:服务器管理
- Projects:项目分组(类似文件夹)
- Applications:具体的应用
- Databases:PostgreSQL、MySQL、Mongo、Redis 等一键部署
- Resources:所有资源汇总
UI 上手没什么难度,整体风格比较接近 Vercel 的简洁风。

数据存放与挂载点
Coolify 把所有持久化数据都放在服务器上的 /data/coolify 目录下。这个目录结构大概是:
| 路径 | 用途 |
|---|---|
| /data/coolify/db | Coolify 自身数据库(SQLite) |
| /data/coolify/proxy | Traefik/Caddy 配置和证书 |
| /data/coolify/ssh | 生成的 SSH 密钥,用于连接其它服务器 |
| /data/coolify/applications | 各应用的配置、Compose 文件、环境变量 |
| /data/coolify/databases | 数据库数据卷 |
知道这个很重要——备份 = 备份 /data/coolify。这个设计也呼应了 README 强调的「无厂商锁定」:所有配置都跟着你的服务器走,即使停用 Coolify,应用和数据也还在,可以手动接管。
> 极客湾注:如果你想迁移服务器,把整个 /data/coolify 目录拷贝过去、重装 Coolify 指向同一份数据,基本就能恢复。
添加部署目标服务器
Coolify 架构上分两种角色:
- 管理节点:跑 Coolify UI 本身的那台机器。
- 远程节点:被纳管的服务器,可以跑你的应用和数据库。
一台机器也可以同时是两个角色,刚装好的本机就属于这种。
要把另一台服务器纳管进来:进入 Servers → Add Server,选一个服务提供商 preset(比如 Hetzner、DigitalOcean 之类有现成的 cloud-init 集成),或者选「Custom Server」手动添加。系统会给出一串命令,你在目标机器上以 root 跑一遍,Coolify 就通过 SSH 密钥连上了它。这之后你在 UI 上点「Deploy」,实际部署动作会通过 SSH 派发到对应的服务器上。
部署你的第一个应用
连好服务器后,最爽的一步——部署应用。
Coolify 支持两种来源:
- Git 仓库:填上仓库 URL(GitHub、GitLab、Gitea、自建 Git 都支持),它会识别你的项目类型(Node、Go、Python、PHP、Ruby、Static 等),自动选择构建方式。
- 一键模板:内置了几十个常见开源项目(WordPress、Strapi、Ghost、Plausible、Umami 等等),选一个、填几个变量、点 Deploy 就完成。
以部署一个静态站 / Next.js 项目为例,流程大致是:
- 创建一个 Project(项目分组)。
- 在 Project 里 New Resource → Application。
- 选 Public Repo 或 Private Repo(私有仓库需要填部署密钥)。
- 选构建 Pack(Next.js / Static / Dockerfile)。
- 配置端口、环境变量、域名。
- 点 Deploy,等日志跑完。
第一次部署会拉镜像、装依赖、构建,时间上 Node 项目可能 2~5 分钟,静态站更快。日志直接打在 UI 上,失败可以很快看到是依赖装不上还是端口配错。

反向代理与 HTTPS
部署完之后 Coolify 默认会通过内置的反向代理(Traefik 或 Caddy,根据版本不同)把流量路由到对应容器。要开 HTTPS 也很简单:
- 在应用配置里填上你的域名。
- 在 DNS 服务商把域名 A 记录指向这台服务器 IP(也支持 CNAME,但 A 更直接)。
- 在应用里勾选「Generate HTTPS Certificate」,Coolify 会自动通过 Let’s Encrypt 申请证书并续期。
> DNS 生效需要几分钟到几十分钟,Let’s Encrypt 颁发证书需要 80/443 端口能从公网访问,所以这两个端口别忘了在防火墙放行。证书存放在 /data/coolify/proxy 下。
多域名、不同服务共存、自动 HTTP→HTTPS 跳转,这些都内置了。
常见问题与坑
- 必须 root:一键安装脚本需要 root,普通用户用 sudo 在前面加一下就行。
- 资源占用不小:Coolify 自身服务挺多,建议 2G 内存起步;如果内存吃紧,可以考虑把数据库单独移到远程节点。
- 防火墙放行:服务器商通常默认开放 SSH,但 80/443/8000 这些端口要自己去控制面板或
ufw/firewalld里开。 - Docker 冲突:如果你服务器上之前装过别的 Docker 工具链,少数情况下 Coolify 会和现有 Traefik 冲突,建议用一台干净的机器跑。
- 更新:Coolify 本身可以通过 UI 的「Update」按钮升级,背后是拉新镜像并迁移,升级前备份
/data/coolify是好习惯。 - 不部署也能用:停止使用 Coolify 后,应用和数据都还在你的服务器上,只是失去自动部署、证书续期这些自动化能力。
小结一下
到这里你应该已经把 Coolify 装起来、连好服务器、部署了第一个应用并套上了 HTTPS。剩下的就是按自己需要去探索:数据库一键部署、团队协作成员邀请、监控、Webhook 触发自动部署等等。整个体验确实很接近 Vercel / Heroku,但数据完全在你自己的机器上,按月付的只有 VPS 的费用(README 提到一台基础 VPS 大约 4–5 美元/月),长期下来比纯 SaaS 省不少。
如果想看更完整的优缺点对比和适用场景分析,可以看这篇深度评测:Coolify 自托管评测——Vercel 替代品到底值不值得用。

评论(0)