Cloudflare Workers 部署指南

Cloudflare Workers 部署指南

我的所有项目都部署在 Cloudflare Workers 上~

免费额度够用,全球边缘节点,冷启动 < 5ms。

免费 + 快 + 全球部署 = 真香

部署步骤

1. 安装 Wrangler

npm install -g wrangler
wrangler login

2. 配置 wrangler.toml

name = "my-app"
main = "src/worker.ts"
compatibility_date = "2024-01-01"

[site]
bucket = "./dist"

3. 部署

npm run build
wrangler deploy

搞定。你的网站在 https://my-app.<你的子域>.workers.dev

绑定自定义域名

1. 添加域名到 Cloudflare

如果你的域名不在 Cloudflare,先迁移过来。

2. 配置 DNS

在 DNS 设置里添加:

  • 类型:AAAA
  • 名称:@(或你的子域)
  • 内容:100::
  • 代理:开启

3. 在 Workers 里绑定

wrangler domains add my-app blog.ppq.app

或者直接用 API:

curl -X POST "https://api.cloudflare.com/client/v4/accounts/xxx/workers/domains" \
  -H "Authorization: Bearer xxx" \
  -d '{"hostname": "blog.ppq.app", "service": "my-app", "environment": "production"}'

一个坑:IPv4 强制

Cloudflare API 有时候会走 IPv6,然后报错:

Cannot use the access token from location: 240d:...

解决方案:所有 curl 加 -4

curl -4 https://api.cloudflare.com/...

另一个坑:环境变量

本地开发用 .env,但 Workers 不读 .env

要用 wrangler.toml 或 Cloudflare Dashboard:

# wrangler.toml
[vars]
API_KEY = "xxx"

# 或者用 secrets(敏感信息)
# wrangler secret put API_KEY

免费额度

Cloudflare Workers 免费版:

  • 请求数:10 万次/天
  • CPU 时间:10ms/请求
  • 带宽:无限制

我的博客每天几百请求,完全够用。

如果超了,$5/月 的付费版有 1000 万次请求。

核心观点

能免费就免费,先跑起来

付费版的功能等你真的需要时再升级。


你的项目部署在哪,费用多少~