Skip to content

部署到 Cloudflare

Cloudflare Workers 宿主使用 KV、R2、D1、Durable Objects 和 Static Assets,适合希望边缘部署、减少主机运维并支持设备长连接的场景。

tool-bridge GitHub 首页 点击 Deploy to Cloudflare。模板会在第一次构建前要求提供信任根,避免先启动一个没有 Admin SK 的实例。

部署前生成并妥善保存:

  • TB_BOOTSTRAP_ADMIN_SK:首次引导的最高权限凭证;
  • TB_SECRET_ENCRYPTION_KEY:SecretStore 的加密密钥。

这两个值必须进入 Cloudflare Secret,不能写入普通 vars、仓库文件或构建日志。

需要定制或参与开发时,使用 CLI 向导:

Terminal window
git clone https://github.com/TokenRollAI/tool-bridge
cd tool-bridge
pnpm install
npm install -g @tool-bridge/cli
tb init cloudflare --repo .

向导会完成登录或账户选择、生成 trust roots、创建 KV/R2/D1、构建部署、验证 ~help,并在本机保存 profile。

非交互环境可以显式提供参数:

Terminal window
tb init cloudflare \
--repo . \
--account-id <cloudflare-account-id> \
--domain tb.example.com \
--yes

完整选项以当前 CLI 返回的 tb init cloudflare --help 为准。

仓库里的 Wrangler 配置是账户中立模板,不应提交以下内容:

  • Cloudflare account ID;
  • 自定义域名;
  • KV、R2、D1 等真实资源 ID;
  • Wrangler 登录态和任何 Secret。

provision 过程会为当前 checkout 回填真实部署目标。该结果属于环境配置,不是可复用的源码默认值。

至少检查下面四层:

  1. 网关健康检查正常;
  2. Admin SK 可以读取根路径 ~help
  3. 新建受限 SK 后,allow、deny 和不可见路径 404 符合预期;
  4. Dashboard 与 CLI 看到相同节点,并能完成一次实际调用。

使用自定义域名时,canonical origin 与 OAuth redirect 必须保持一致。未绑定域名时,先使用 Workers 提供的预览入口完成验收。