SuperAPI AI 工具集

wrangler

部署与运维

查看项目

更新于 10-16 10:53

技能介绍

用途

Wrangler 是 Cloudflare Workers 的命令行接口(CLI),用于开发、部署和管理 Workers 及其周边的 Cloudflare 服务。资料建议:在任何 Wrangler 任务中优先检索最新资料而非依赖预训练知识,在编写或审查命令与配置前应获取最新信息,不要依赖内置知识判断 CLI 参数、配置字段或绑定结构。

安装与检索来源

首先检查是否已安装:运行 wrangler --version,需 v4.x 及以上。未安装则运行 npm install -D wrangler@latest。尽可能使用 Wrangler 而不是手动构造 API 请求。

检索来源包括:Wrangler 文档(https://developers.cloudflare.com/workers/wrangler/,用于 CLI 命令、参数、配置参考);Wrangler 配置 schema(node_modules/wrangler/config-schema.json,用于配置字段、绑定结构、允许值);Cloudflare 文档(搜索工具或 https://developers.cloudflare.com/workers/,用于 API 参考、兼容性日期/标志)。

主要能力与配置

配置建议使用 wrangler.jsonc(优先 JSON 而非 TOML,较新特性仅支持 JSON);设置 compatibility_date(使用近期日期,30 天内);配置变更后运行 wrangler types 更新 TypeScript 绑定;本地开发默认使用本地存储模拟(除非设置 remote: true);用 wrangler check startup 测量启动时间并检测超限脚本;用 env.staging、env.production 定义环境。

最小配置包含 $schema、name、main、compatibility_date。完整配置可包含 vars、kv_namespaces、r2_buckets、d1_databases、ai、vectorize、hyperdrive、durable_objects、triggers.crons、env 等绑定。

常用使用方式

核心命令:本地开发 wrangler dev;部署 wrangler deploy;干跑 wrangler deploy --dry-run;生成类型 wrangler types(含 --check 用于 CI);启动性能分析 wrangler check startup;实时日志 wrangler tail;删除 Worker wrangler delete;认证状态 wrangler whoami。

本地开发可加 --env、--local、--remote、--port、--live-reload、--test-scheduled 等参数;.dev.vars 用于本地开发密钥。远程绑定通过 binding 配置中的 remote: true 连接真实资源,推荐用于 AI(必需)、Vectorize、Browser Rendering、mTLS、Images。

资源管理

部署支持 --env、--dry-run、--keep-vars、--minify。密钥管理强调安全:绝不以命令参数传递密钥值或用 echo 管道,优先交互式提示、从文件管道或 secret bulk;不要输出、记录或硬编码密钥值。相关命令有 wrangler secret put/list/delete/bulk。版本与回滚:wrangler versions list、versions view、rollback。

服务覆盖:KV(namespace、key 的创建/列出/删除/读写、bulk put);R2(bucket 创建/列出/信息/删除,object 上传/下载/删除);D1(数据库创建/列出/信息/删除、execute 远程或本地、migrations 创建/列出/应用、export 备份);Vectorize(索引创建含 --dimensions/--metric/--preset、list/get/delete,向量 insert 与 query);Hyperdrive(create/list/get/update/delete,支持连接串);Workers AI(wrangler ai models、ai finetune list,注意始终远程运行并产生用量费用,即使本地开发);Queues(create/list/delete、consumer add/remove);Containers(build、push、list/info/delete、images、registries 配置,凭据用环境变量而非硬编码);Workflows(list/describe/trigger/delete,instances 的 list/describe/terminate);Pipelines(create/list/show/update/delete);Secrets Store(store 与 secret 的创建/列出/获取/删除);Pages(project create、deploy、deployment list)。

可观测性与测试

日志:wrangler tail 支持指定 Worker、--status、--search、--format json;配置 observability(enabled、head_sampling_rate)。测试:本地测试用 Vitest 与 @cloudflare/vitest-pool-workers(npm install -D @cloudflare/vitest-pool-workers vitest),并提供 vitest.config.ts 示例;定时事件可用 wrangler dev --test-scheduled 后访问 http://localhost:8787/__scheduled 触发。

适用场景与限制

适用于需要在 Cloudflare Workers 平台上开发、部署、管理各类资源与绑定的开发者与团队,覆盖从本地开发到 CI 类型检查、部署、日志、回滚的完整流程。常见问题排查包括:command not found(安装)、认证错误(wrangler login)、启动时间超限(check startup)、类型错误(wrangler types)、本地存储不持久(检查 .wrangler/state)、绑定未定义(核对绑定名)。最佳实践:将 wrangler.jsonc 纳入版本控制、使用自动配置、在 CI 中运行 wrangler types。

资料来源未提供的内容(如具体定价、平台支持范围、额外效果说明等)暂未提供。