当 Docker 是真实交付物时选容器
如果应用已经有 Dockerfile、原生二进制、自定义包或后台 worker,容器托管通常比适配无服务器函数运行时更自然。
按负载形态选择:Docker Web 服务、额度型全栈、小型 API,或机器学习 demo。
表格用于快速扫描。做生产规划时,要特别看休眠行为、持久存储,以及免费层是否允许多个活跃服务。
| 提供商 | 免费存储 | 月流量 | 规格 / 算力 | 连接限制 | 关键限制 | 操作 |
|---|---|---|---|---|---|---|
RenderDocker / PaaS | 512MB 内存 | 100GB | 0.1 vCPU,最多 1 个并发服务 | 标准入口网络 | 空闲 15 分钟后强制休眠(冷启动延迟约 30-60 秒) | 访问官网 ↗ |
Zeabur无服务器容器 | 每月 5 美元免费额度 | 按量计费(从 5 美元额度中扣除) | 无冷启动,CPU/内存弹性使用 | 亚太路由优化 | 额度按月过期;高负载服务会很快耗尽 | 访问官网 ↗ |
Koyeb微服务 | 512MB 内存 | 100GB | 0.1 vCPU,2GB 本地临时磁盘 | 全球边缘服务网格 | 无流量时自动休眠;最多 1 个活跃服务 | 访问官网 ↗ |
Hugging Face SpacesDocker Space | 16GB 内存 / 50GB 磁盘 | 不限量(公平使用) | 2 个共享 vCPU / 大型沙箱环境 | Hugging Face 平台内部网络 | 空闲 48 小时后休眠;不支持自定义域名绑定 | 访问官网 ↗ |
如果应用已经有 Dockerfile、原生二进制、自定义包或后台 worker,容器托管通常比适配无服务器函数运行时更自然。
免费容器磁盘往往是临时或受限的。除非平台明确支持持久卷,否则数据库、上传文件和备份应放在托管数据库或对象存储里。
免费容器平台常会因不活跃休眠。管理工具和 demo 可以接受,但需要快速首次响应的公开 API 会受影响。
按额度抵扣的平台看起来很慷慨,但流量、构建、数据库和多个服务可能都会从同一个月度额度里扣。
休眠服务可能无法满足外部系统的响应时间期望。支付 webhook、登录回调和机器人命令尤其需要谨慎测试。
容器文件系统常常不是持久的。日志、SQLite 文件、上传内容、生成图片和模型缓存,都可能在重启或重新部署后消失。
很多免费计划只允许一个活跃服务。这意味着 web、worker、cron、数据库和队列组件可能要拆到别的平台。
Hugging Face Spaces 很适合 demo,但自定义域名 API 产品、私有负载和严格可用性需求通常需要另一条生产路径。
Render 跑 Docker Web 服务,Supabase 放持久 Postgres/Auth,Upstash 做限流或队列。
前端静态托管,再用一个小型 Koyeb 服务承载需要容器运行时的 API。
Spaces 负责交互式 ML demo,单独用静态站承载 SEO、文档、更新记录和产品定位。
取决于负载。Render 和 Koyeb 适合能接受休眠的小型 Web 服务;Zeabur 适合月度额度能覆盖的技术栈;Hugging Face Spaces 最适合 ML demo 和公开实验。
只建议用于低风险或早期项目。生产 API 应确认冷启动、持久存储、可用性预期、日志、扩缩容,以及带宽或额度耗尽后的行为。
需要 Docker、长时间运行服务、自定义包、原生二进制或后台 worker 时选容器;短事件驱动 API 和 webhook 选函数。
通常不是。很多免费容器平台使用临时本地磁盘。除非服务商明确提供持久卷,否则应把本地文件视为临时文件。
适合小型 API、内部工具、demo、机器人、后台原型、Docker 化 Web 应用和 ML demo。不适合无法接受休眠、数据丢失或额度耗尽的关键负载。