Cloudflare Container 是什么
一句话总结
Cloudflare Containers 是跑在 Cloudflare 全球边缘网络上的容器服务。你可以把 Docker 镜像丢上去,它自动在离用户最近的节点运行,不用管服务器。最大的特点是空闲零费用、按 CPU 实际使用量计费。
🤔 为什么会有它 / 解决了什么问题
Cloudflare 之前提供了 Workers(轻量 JS 函数)来跑代码,但限制很大——128MB 内存、30 秒超时、只能用 JavaScript。稍微复杂的任务(比如图片处理、PDF 生成、AI 模型推理)就跑不了。
传统 VPS 能跑任何东西,但你必须养一台 24 小时开机的机器,即使没人访问也要付整月费用。
CF Containers 填补了中间地带:能跑任何 Linux 程序的完整容器,但按秒计费、闲着不花钱。 你既不需要改代码适配 Workers 的限制,也不用为一台空转的 VPS 买单。
🔍 具体原理 / 运作逻辑
你有两个东西:一个 Docker 镜像(比如 Bolt.diy),一个 Workers 脚本(几行 JS)。
用户打开 bolt.gottenergy.com
│
▼
Workers 脚本(JS)
env.CONTAINER.fetch(request)
│
▼
CF Containers(Firecracker 微虚拟机)
从 Docker 镜像启动容器
← 全球 300+ 节点,离用户最近的那个
│
▼
返回页面给用户
如果 10 分钟没人访问 → 容器自动休眠 → 不收费
下次有人访问 → Workers 唤醒容器 → 2-3 秒冷启动 → 继续服务
类比:CF Containers 像共享汽车——要用的时候开走一辆,用完停路边就走人,按开的分钟数付钱。传统 VPS 像买了一辆车——不管开不开,停车费(月租)照付。
更硬核的技术细节(点击展开)
底层用的是 Firecracker microVM(和 AWS Lambda 一样的虚拟化技术),每个容器跑在独立的微型虚拟机里,有完整的 Linux 内核。
实例规格:
- lite:1/16 vCPU + 256MB + 2GB 磁盘(轻量任务)
- basic:1/4 vCPU + 1GB + 4GB 磁盘(小应用)
- standard-1:1/2 vCPU + 4GB + 8GB 磁盘(通用,推荐)
- standard-2:1 vCPU + 6GB + 12GB 磁盘(计算型)
- standard-3:2 vCPU + 8GB + 16GB 磁盘
- standard-4:4 vCPU + 12GB + 20GB 磁盘
- custom:可自定义 vCPU/内存/磁盘配比
计费粒度精确到 10 毫秒:
- vCPU:$0.000020/秒
- 内存:$0.0000025/GiB/秒
- 磁盘:$0.00000007/GB/秒
- 含在 $5/月 Workers Paid 计划里的免费额度:375 vCPU-分钟 + 25 GiB-小时 + 200 GB-小时
限制:不支持 GPU、不支持 Windows 容器、不能加载自定义内核模块。不提供公网 IP,所有流量必须经过 Workers。
🧭 什么情况下会用到 / 什么场景会遇到它
- 偶发使用的工具型应用(一天打开几次,其他时间空闲)
- CPU 密集但不需要 GPU 的计算任务(视频转码、PDF 生成、图像处理)
- AI 代码沙箱(执行不受信任的用户代码)
- 需要完整 Linux 环境但不想管服务器的场景
⚖️ 副作用 / 代价 / 取舍
- 冷启动延迟:休眠后首次访问要等 2-3 秒唤醒,对实时性要求高的应用体验不好
- 不能跑数据库:容器休眠后内存数据丢失,持久化数据必须存在 R2/D1 等外部服务
- 从 Dokploy 迁移成本高:CF Containers 不支持 Docker Compose,每个 app 需要单独写 Workers 脚本做路由
- 不能跑定时任务:容器休眠后 cron/scheduler 就不再执行了
- 新平台风险:2026 年 4 月才 GA,生态工具和社区经验不如传统 VPS 丰富
🕰️ 来历
- 2025 年 6 月:Public Beta
- 2025 年 11 月:引入 Active CPU Billing(只计费实际 CPU 使用)
- 2026 年 1 月:支持自定义实例规格
- 2026 年 4 月 13 日:GA(General Availability,正式生产可用)
🔗 关联 / 经常一起出现的概念
- Cloudflare Workers:CF Containers 的前置网关,所有请求必须经过 Workers 才能到容器
- Serverless(无服务器):CF Containers 属于 Serverless 容器,你不需要管理服务器,但和传统 Serverless 函数(如 AWS Lambda)不同——它可以跑任何语言和完整操作系统
- Docker:CF Containers 使用标准 Docker 镜像(OCI 格式),你可以把现有的 Docker 镜像直接推送上去
- Firecracker:AWS 开源的轻量级虚拟机技术,CF Containers 用它来隔离每个容器
- Dokploy:我们现在用来管理 VPS 上的容器,但 Dokploy 不支持 CF Containers
⚠️ 注意事项 / 常见误区
- CF Containers 不能”完全替代 VPS”——它适合事件驱动的、偶发使用的应用,不适合需要持续在线的服务
- 迁移不是把 compose 文件搬过去就能跑,需要给每个 app 写 Workers 转发脚本
- 存储是临时的,容器休眠后数据丢失。需要持久化的数据必须用 R2(S3 兼容)、D1(SQLite)或 Durable Objects
📎 记忆锚点
CF Containers = 共享汽车,按分钟计费。VPS = 买私家车,不开也要付停车费。你不需要每天开车的场景,共享汽车便宜太多。
📝 更新日志
| 日期 | 改动 | 原因 |
|---|---|---|
| 2026-07-09 | 首次创建 | 老师要求研究 CF Containers 替代 Hostinger VPS 的可行性 |