【PaaS自托管 02】2026 年用 Coolify 把 5 美元 VPS 变成自己的 Railway:部署避坑指南
2026-08-16 · DevCraft Studio
手把手演示在低价 VPS 上一条命令装好 Coolify,托管多个应用和 Postgres/MySQL/Redis 数据库,搞定居自动部署与自动 SSL。顺手把空闲 500-700MB 的内存占用和版本升级的破坏性变更讲清楚,让你用一台机器替掉每月上百刀的托管 PaaS。
自托管 PaaS 面板 · 共 2 篇
延伸阅读
更多相关攻略推荐:【年付性价比 01】年付 VPS 性价比排行 2026:同配置谁最值、【10刀以内VPS系列 01】年付不到70块钱的便宜VPS,到底能用、43 亿个地址怎么就不够用了?IPv4 的设计缺陷与人类“续命”奇技、VirMach 值得买吗?1 刀/月神机还是踩坑重灾区?(避坑)、【美西VPS 01】美国洛杉矶 VPS 推荐 2026:CN2 GI。
为什么要在便宜 VPS 上自建 PaaS
如果你和我一样,手里常年养着好几台吃灰的小鸡,又舍不得每个月给 Railway、Render 交几十上百刀的托管费,那 Coolify 基本就是为你准备的。它把自己定位成"开源版的 Heroku",但机器完全是你自己的。你推一次代码它就帮你构建、起容器、配反代、发证书,体验跟 Railway 几乎一样,账单却只剩下那台 VPS 的本钱。
2026 年这个组合特别香,还有一个外部原因:Hetzner 在年初涨了一轮价,不少人开始把目光转回那些常年打折的北美小厂。像 RackNerd、Cloudcone 这种年付十几美元就能拿到 2-4GB 内存的机型,或者 Bandwagon(搬瓦工) 的 CN2 GIA 线路款,拿来做 Coolify 的宿主都很顺手。一台机器顶替掉原本每月 $100+ 的托管 PaaS,这笔账怎么算都划算。
当然代价也很清楚:机器是你自己的,半夜容器挂了也是你自己在 oncall。Coolify 把"部署、数据库、备份、证书"这些 Day-2 的苦差事自动化了,但它不会替你背锅。想清楚这一点,再往下看。
选机器:内存和套餐怎么挑
先说官方的最低门槛,别被"能跑"骗了。Coolify 文档写的最低配置是:2 个 vCPU、2GB 内存、30GB 以上 SSD、架构 AMD64 或 ARM64、Docker Engine 24+。但注意,这是"只装控制台、啥应用都不跑"的底线。一旦你把构建任务、应用和数据库都塞到同一台机器,2GB 会非常局促,构建大一点的 Node 项目时很容易 OOM。
我的建议是:如果只是跑两三个轻量服务,选 4GB 内存起步 的套餐最舒服。RackNerd 的 Black Friday 特价、Cloudcone 的弹性套餐、Bandwagon 的 DC6/CN2 款都能轻松给到 2-4GB。硬盘别抠,30GB 看着够,但 Docker 镜像和历史构建累积起来很快吃满,建议 40GB 以上。
- 2GB / 2 vCPU:仅适合学习和跑一两个超轻量服务,构建时请务必限制并发。
- 4GB / 2-3 vCPU:甜点区间,能稳定托管 5-10 个小容器加一个数据库。
- 8GB 以上:如果你打算把生产流量和长期项目都挪过来,直接上这个档位。
CPU 反而不是瓶颈,Coolify 空闲时只吃 5-7%,构建时才飙上去。内存才是那条线,下面一节会用实测数字告诉你平台自己就先占掉多少。
一条命令装 Coolify
这是 Coolify 最爽的地方:官方提供了一行安装脚本,把 Docker、Docker Compose、Traefik 反代、PostgreSQL、Redis、实时终端(Soketi)全部一次性拉起来。新开一台干净的 Ubuntu 22.04/24.04 或 Debian 12,SSH 进去后直接:
curl -fsSL https://cdn.coollabs.io/coolify/install.sh | sudo bash
脚本跑完大概两三分钟,结尾会打印出控制台地址,形如 http://你的服务器IP:8000。打开它,创建管理员账号,把当前这台机器注册成"localhost"服务器,向导就走完了。注意端口 8000 是安装期的临时入口,等你给控制台配好域名走 443 之后,可以把这个端口关掉,只留 443 访问。
装之前强烈建议先把防火墙开了,不然后面加域名时会莫名其妙连不上。Coolify 这套栈需要的端口其实不多:
22/tcp:SSH,先开,不然会把自己锁外面。80/tcp和443/tcp:给部署的应用和自动证书用。8000/tcp:Coolify 控制台(配好域名后可关)。6001/tcp、6002/tcp:实时日志/终端用。
用 ufw 的话就是 ufw allow 22,80,443,8000,6001,6002/tcp 然后 ufw --force enable。别小看这一步,中文圈不少"装完打不开"的求助帖,根因就是防火墙或者云厂商的安全组没放行。
托管多个应用 + 数据库(Postgres/MySQL/Redis)
装好之后,真正的玩法才开始。在 Coolify 里你先建一个 Project,然后在里面加 Resource。它支持三类来源:Git 仓库、Docker 镜像、以及原生 docker-compose.yml。对绝大多数项目,直接用 Git 仓库最省心——连上 GitHub/GitLab,选仓库和分支,Coolify 会用 Nixpacks 自动识别语言(Node、Python、Go、PHP、Ruby、Java 都支持),你也可以指定自己的 Dockerfile。
数据库更是 Coolify 的强项。在同一个 Project 里点"New Resource → Database",就能一键开出 PostgreSQL、MySQL、MariaDB、MongoDB、Redis、KeyDB、Dragonfly。它会自动生成随机密码,并给你两份连接串:一份是内部地址(给同项目里的应用通过环境变量引用),一份是可选的对外地址。应用那边只要在环境变量里填 DATABASE_URL,就能直接连上,完全不用手搓 docker-compose 网络。
如果你有一整套多容器的 docker-compose 服务,直接把 compose 文件丢进去当一种 Resource 类型即可,Coolify 会像管普通 Git 应用一样帮你管生命周期、域名和证书。唯一要留意的坑是:多容器 Compose 的环境变量会被 Coolify 集中显示在一个面板里,部署前务必逐个核对,别让某个服务的变量被同名的覆盖了。
Git 自动部署与 Let's Encrypt 自动 SSL
自动部署是"替代 Railway"这件事的灵魂。Coolify 在连好 Git 源之后,可以开启"自动部署":每次 push 到指定分支,它就拉代码、构建、滚动更新。如果你想更可控,它也给每个项目暴露了 webhook,GitHub Actions 里构建完镜像推到仓库后,调一下 webhook 就能触发 Coolify 重新拉取部署。
SSL 则是完全无感的。Coolify 内置 Traefik 作为反代,只要你在 DNS 里把域名(最好用通配符 *.apps.你的域名.com)的 A 记录指向服务器 IP,并在控制台里设置好 FQDN,Traefik 就会通过 Let's Encrypt 自动申请并续期证书。你基本这辈子都不用手动碰 certbot。一个小提醒:用 Cloudflare 的小伙伴,如果走 Cloudflare Tunnel 而不是直连 443,记得把源站证书模式处理好,否则 Let's Encrypt 会和 Cloudflare 的证书打架。
域名解析这块是中文教程最容易漏的:很多人卡在"部署成功但浏览器报不安全",其实只是忘了解析 A 记录,或者安全组没开 80/443 让 Let's Encrypt 做 HTTP-01 校验。先把 DNS 和端口都确认好,再点部署,能省掉一大半排查时间。
资源占用实测:空闲就吃掉 500-700MB
这是很多人装之前没概念、装之后被吓一跳的点。Coolify 不是轻量选手——它自己就是一堆容器在跑。根据 2026 年多个独立基准测试,平台空闲时的内存占用大约在 500-700MB,细分下来大致是:主程序(Laravel 那套 UI+API)约 450MB、Traefik 约 60MB、实时终端 Soketi 约 80MB、内部 PostgreSQL 约 160MB、Redis 约 20MB,合计能到 770MB 上下。
这意味着:在一台 2GB 的机器上,平台自己先吞掉三分之一还多;到了 4GB 机器上,留给应用的还有 3.3GB 左右。CPU 空闲大约 5-7%,但一旦它后台跑指标采集,会瞬间冲到 25%。所以如果你机器小,建议直接关掉 Sentinel 监控 agent,把那点内存省给真正跑业务的应用。
结论很直接:想要舒服地既跑控制台又跑业务,4GB 内存是那条分水岭。2GB 能跑,但你会一直在内存线上走钢丝,构建时一个不小心就 OOM 把整机带崩。对照 RackNerd、Cloudcone、Bandwagon 的套餐,加几块钱月费从 2GB 升到 4GB,换来的是整晚安睡,非常值。
版本升级的破坏性变更避坑
2026 年 Coolify 走到了 v4 大版本(v4.0 于 5 月发布,后续 4.1 又加了 Railpack 构建、审计日志和官方 MCP)。v4 相比 v3 是整体重写:后端从 Node.js 换成了 Laravel,前端也从 SvelteKit 换成了 Livewire。结果就是 v3 的项目数据格式和 v4 不兼容,v3 升 v4 不会自动迁移,官方要求升级前必须先备份数据库。
所以这条避坑铁律请刻进脑子:每次在控制台点 Update 之前,先备份 /data 这个数据卷。Coolify 的所有配置、部署历史、密钥都存在这里的一个 PostgreSQL volume 里,把那个 volume 打包,未来换机器或者升级翻车都能原样复活。控制台里也提供把实例和每个数据库定时备份到 S3 兼容存储的功能,建议上线第一天就配好,别等数据真丢了才后悔。
另外一个 2026 年绕不开的安全坑:1 月曾一次性披露 11 个 Coolify 漏洞(含数个 CVSS 10.0 的认证绕过与命令注入)。虽然已全部修复,但教训是——别把 8000 端口的控制台裸奔在公网。要么配好域名走 443 后关掉 8000,要么用 IP 白名单或 VPN 收口。保持版本最新,别长期停在旧 beta。
最后一句大实话:Coolify 仍处于高频迭代期,每次大版本都可能带回归 bug。升级前看一眼 release notes 里的 breaking changes,给生产环境留出维护窗口,别在流量高峰点那个 Update 按钮。