Cloudflare Wrangler(一)入门
系列 - Cloudflare合集
目录
什么是 Cloudflare Wrangler
Cloudflare Wrangler 是一个命令行工具,用于与 Cloudflare Workers 开发平台进行交互。Cloudflare Workers 是 Cloudflare 提供的无服务器计算平台,允许开发者在全球范围内的边缘位置上运行 JavaScript、Rust 和 C++ 代码。
Wrangler 的主要功能包括:
项目创建和管理:使用 Wrangler,可以方便地创建、配置和管理 Cloudflare Workers 项目。 本地开发和测试:提供本地开发环境,允许开发者在本地机器上测试 Workers 脚本。 发布和部署:简化了将代码部署到 Cloudflare Workers 的过程,支持一键发布。 配置管理:可以管理 Workers 的环境变量、KV 存储和其他配置项。 日志和调试:提供实时日志和调试工具,帮助开发者诊断和修复问题。
Wrangler使用
- 安装 Wrangler
# 安装wrangler
npm install -g wrangler
#在使用 wrangler 之前,需要登录并配置你的 Cloudflare 账户信息。
wrangler login
- 创建新项目
# 创建 [my-cloudflare-project] 项目
wrangler generate my-cloudflare-project
如下,选择想要创建的 Worker 类型
✨ Created my-cloudflare-project\wrangler.toml
√ Would you like to use git to manage this Worker? ... no
√ No package.json found. Would you like to create one? ... yes
✨ Created my-cloudflare-project\package.json
√ Would you like to use TypeScript? ... 是否使用ts
✨ Created my-cloudflare-project\tsconfig.json
? Would you like to create a Worker at my-cloudflare-project\src\index.ts? 确定 worker 类型
> None
Fetch handler 这是最常见的选择,适用于处理 HTTP 请求
Scheduled handler 适用于处理定时任务
Would you like us to write your first test with Vitest? 是否通过Vitest创建测试文件
- 初始化
如果wrangler.toml 没生成,可以通过以下命令初始化
wrangler init
- 本地测试
cd my-cloudflare-project
npx wrangler dev
⛅️ wrangler 3.65.1
-------------------
⎔ Starting local server...
[wrangler:inf] Ready on http://127.0.0.1:8787
[wrangler:inf] GET / 200 OK (17ms)
[wrangler:inf] GET /favicon.ico 200 OK (2ms)
│ [b] open a browser, [d] open Devtools, [l] turn off local mode, [c] clear console, [x] to exit
- 部署与发布
wrangler deploy
Wrangler常用命令
- 部署时指定环境
指定环境:wrangler publish --env <environment>
,同时需要修改 wrangler.toml
,配置 [env.staging]
wrangler deploy --env staging
- 查询项目状态
wrangler whoami
- 查询项目日志
wrangler tail
- 环境变量和密钥管理
# 添加环境变量 wrangler secret put <SECRET_NAME>
wrangler secret put API_KEY
# 查看环境变量
wrangler secret list
- 生成 TypeScript 类型定义
wrangler types