SuperAPI AI 工具集

wrangler

部署与运维

查看项目

更新于 10-16 11:55

技能介绍

用途

Wrangler 是 Cloudflare Workers 的命令行工具,用于开发、部署和管理 Cloudflare Workers 以及相关联的资源。文中明确支持的资源包括 Workers、KV、R2、D1、Vectorize、Hyperdrive、Workers AI、Containers、Queues、Workflows、Pipelines、Secrets Store 和 Pages。

安装与版本要求

需要 Wrangler v4.x 及以上版本,可用 wrangler --version 检查。未安装时执行:

npm install -D wrangler@latest

主要能力与配置

推荐使用 wrangler.jsonc(优先于 TOML,因为较新特性仅支持 JSON),需设置较新的 compatibility_date(资料建议 30 天内)。配置变更后运行 wrangler types 更新 TypeScript 类型绑定,部署前运行 wrangler check 提前发现错误。可通过 env.staging 与 env.production 定义多环境。配置中可声明 vars、kv_namespaces、r2_buckets、d1_databases、ai、vectorize、hyperdrive、durable_objects、triggers.crons 等绑定。

常用命令

核心命令包括:wrangler dev(本地开发服务器)、wrangler deploy(部署,支持 --dry-run、--env、--keep-vars、--minify)、wrangler types、wrangler check、wrangler tail(实时日志)、wrangler delete、wrangler whoami。

资源管理命令覆盖多个产品:KV(namespace、key 的增删查、bulk)、R2(bucket、object 的增删查传下载)、D1(create、list、execute、migrations、export)、Vectorize(create、insert、query)、Hyperdrive(create、update、delete)、Workers AI(wrangler ai models、finetune list)、Queues、Containers(build、push、images、registries)、Workflows(trigger、instances)、Pipelines、Secrets Store、Pages(project、deploy、deployment)。

使用方式要点

  • 新建项目:npx wrangler init my-worker,或使用框架 npx create-cloudflare@latest my-app。
  • 本地开发默认使用本地存储模拟;可用 wrangler dev --local 强制仅本地,--remote 运行在 Cloudflare 边缘(legacy),--port、--live-reload、--test-scheduled 可调整行为。
  • 远程绑定:在绑定配置中使用 remote: true,可让本地开发连接真实资源;资料推荐 AI(必需)、Vectorize、Browser Rendering、mTLS、Images 使用远程绑定。
  • 本地密钥用 .dev.vars 文件;线上密钥用 wrangler secret put/list/delete/bulk 管理。
  • 版本与回滚:wrangler versions list、wrangler versions view、wrangler rollback [VERSION_ID]。
  • 测试:可配合 Vitest 与 @cloudflare/vitest-pool-workers;定时事件用 wrangler dev --test-scheduled 并通过 curl http://localhost:8787/__scheduled 触发。

适用场景

适用于需要以命令行方式开发、部署和运维 Cloudflare Workers 及其绑定资源的开发者,覆盖从本地调试、配置校验、类型生成、密钥管理到多环境部署、版本回滚和日志观测的完整流程。

限制与注意事项

  • 需 v4.x 及以上版本;新特性仅支持 JSON 配置。
  • 资料明确指出:Workers AI 始终远程运行,即使在本地开发也会产生使用费用。
  • 文中提及 Workers AI 为远程绑定中的必需项。
  • 未提供关于收费价格、具体性能指标、平台限制细则等更多信息。