从零到部署:你的个人 Heroku 替代方案(无需付费)

发布: (2025年12月25日 GMT+8 03:35)
8 min read
原文: Dev.to

Source: Dev.to

封面图:从零到部署:您的个人 Heroku 替代方案(无需账单)

问题

你是否有过这样的感受:想要快速部署某个东西,却被 Heroku 的定价逼得想哭?或者 Vercel 每月收你 20 美元,而本该只花 3 美元?

Dokploy 解决了这个问题。它是一个开源的 Heroku、Vercel 和 Netlify 替代方案,旨在简化应用管理。

租一台便宜的 VPS(每月 $5‑10),一次性安装 Dokploy,你就拥有了一个完全像付费服务一样的部署平台。

而且仪表盘?简洁明了——不需要命令行噩梦。你可以像使用 Vercel 那样,通过点击和表单管理一切。

实际随 Dokploy 提供的功能

  • 部署任何类型的应用程序(Node.js、PHP、Python、Go、Ruby 等)
  • 创建和管理数据库:MySQL、PostgreSQL、MongoDB、MariaDB、Redis
  • 自动备份
  • Docker Compose 支持
  • 将应用程序扩展到多个节点
  • 监控 CPU、内存、存储和网络使用情况

无论你在构建什么,Dokploy 都能处理。句号。

运行指南(极其简单)

  1. 购买一台 VPS(例如 HetznerOVH Cloud)。
    最低配置:2 GB RAM2 CPU 核心20 GB 磁盘,并开放 80443 端口。

  2. 使用 SSH 登录服务器并执行:

    curl -sSL https://dokploy.com/install.sh | sh

    该脚本会安装 Docker、完成所有配置,并在约 2 分钟内启动 Dokploy。

  3. 脚本执行完毕后,会输出类似 http://:3000 的 URL。
    打开该链接,创建管理员账号,即可开始使用。

仪表盘:魔法发生的地方

左侧菜单是你的控制中心。

  • Create Project → 给它起个名字。业务中各部分的所有资源都位于一个项目内。

在项目中,你可以创建 services

服务类型描述
Applications你的代码(从 GitHub、GitLab 等部署)
DatabasesPostgres、MySQL 等
Docker Compose stacks多容器部署
Templates预构建的开源应用(n8n、Pocketbase,…)

每个服务都通过一个简单的表单创建——无需编辑文件,也没有配置噩梦。

部署你的应用(真正的魔法)

示例: 在 GitHub 上的 Next.js 应用。

  1. 创建服务 → 应用
  2. 选择 GitHub,选择仓库和分支
  3. 点击 Deploy

Dokploy 会构建应用、运行它,并在实时流式输出日志的同时为你提供一个域名。如果构建失败,日志会准确告诉你原因(缺少环境变量、构建命令错误等)。

您自己的数据库(无额外费用)

  1. Create Service → Database → 选择 Postgres(或其他)
  2. 设置密码并部署

您将获得:

  • 自动备份(可选上传至 S3)
  • CPU、内存和磁盘使用情况的图表
  • 应用程序的内部网络连接字符串

没有托管数据库费用,也没有供应商锁定——只是在您的服务器上运行的容器化数据库。

Domains & SSL (Actually Free)

  • 每个应用会自动获得一个免费的 traefik.me 域名。
  • 使用自定义域名:
    1. 前往服务设置中的 Domains
    2. 添加你的域名并将其 A 记录指向你的服务器 IP。
    3. 切换 HTTPS 并选择 Let’s Encrypt

Dokploy 在几秒钟内提供免费 SSL 证书。无需证书账单,也没有续期烦恼——Traefik 会自动处理续期。

环境变量(保持机密)

  1. 打开任意服务 → Environment 选项卡。
  2. 点击眼睛图标进行编辑。
  3. 添加变量,例如 DATABASE_URLAPI_KEYNODE_ENV 等。

保存 → 重新部署。仪表板会加密这些值,且永不记录它们。

监控你的东西

  • Logs 选项卡实时流式输出每个服务的日志。
  • Monitoring 选项卡显示 CPU、内存、磁盘和网络使用情况的图表。

真实的 DevOps 氛围,但易于阅读。

仪表板还能完成其他所有操作

  • 查看数据库备份
  • 检查部署历史
  • 添加第二台服务器并将应用分布到各节点
  • 检查是哪次部署导致问题(通过日志)

首次安装后,你几乎不需要通过 SSH 进入服务器——所有操作都基于 UI,且合乎情理。

Docker Compose 支持(因为有时你需要它)

  1. dokploy 网络添加到你的服务中。
  2. 为路由添加 Traefik 标签。
  3. 通过仪表板上传文件。

Dokploy 直接部署 compose 文件,保持相同的仪表板体验。

当出现问题时

  • 域名无法工作?

    • 确保防火墙已打开 80443 端口。
    • 验证 DNS A 记录指向你的服务器。
    • 等待一分钟以完成解析。
  • 应用无法部署?

    • 检查日志。常见问题:缺少环境变量、构建命令错误、Dockerfile 有误。
  • SSL 证书卡住?

    • 必须能够访问 80 端口;Let’s Encrypt 需要它进行验证。
# Server is slow?

Building applications uses a ton of RAM and CPU and can freeze your whole server.  
If this happens, build your Docker image in CI/CD and push to a registry instead.

实话实说:为什么它能赢

您每月只需支付 $5‑10 的服务器费用。仅此而已。您可以运行:

  • 5 个 Web 应用
  • 3 个数据库
  • 一个缓存层
  • 自动备份

— 所有这些都在同一个仪表盘上,全部归您所有。

与此相比:

  • Vercel – 您一无所有。
  • Heroku – 当您扩展时,费用会疯狂跳涨。
  • 自行搭建 – 一条让人心碎的 DevOps 兔子洞。

Dokploy 拥有:

  • GitHub 上 26,000+ 星标
  • 数百万次下载
  • 来自全球开发者的信任

这不是一个可疑的副项目;它已具备生产就绪的能力。

下一步

  1. 租用 VPS(Hetzner、OVH Cloud 或其他供应商)。
  2. 运行安装命令。
  3. 创建账户。
  4. 部署你的第一个应用。
  5. 观看它运行。

总时间: 30 分钟
总费用: $5

你再也不会回到 Heroku 了。

Back to Blog

相关文章

阅读更多 »