Total Pageviews

Tuesday, 22 September 2026

Wrangler的使用说明

 Wrangler 是 Cloudflare Workers 和 Pages 的官方命令行工具,用于开发、测试和部署 Serverless 应用

一、 核心安装与登录

 在使用 Wrangler 之前,确保已安装 Node.js(建议最低版本为20.18.1)。
npm install -g wrangler

# 登录 Cloudflare 账号(会在浏览器打开授权页面)
wrangler login

# 检查当前登录状态与用户账户信息
wrangler whoami

二、 项目初始化与配置Bash# 创建新的 Cloudflare Workers 或 Pages 项目(交互式引导):
wrangler init my-project

# 或使用快捷创建命令
npm create cloudflare@latest
初始化后,项目根目录会生成一个 wrangler.toml 文件,这是 Wrangler 的核心配置文件:
Ini, TOMLname = "my-worker"
main = "src/index.js"
compatibility_date = "2024-01-01"

# 绑定 KV 数据库示例
[[kv_namespaces]]
binding = "MY_KV"
id = "xxxxxx"

# 设置环境变量
[vars]
ENVIRONMENT = "production"

三、 本地开发与调试Wrangler 使用 Miniflare 在本地模拟 Cloudflare 运行环境,支持热重载和本地/远程资源调试。
启动本地开发服务器(默认端口 http://localhost:8787):
wrangler dev

# 启动本地开发并连接到 Cloudflare 真实的远程资源/数据库
wrangler dev --remote

# 指定端口启动
wrangler dev --port 3000
四、 部署与发布Bash# 发布 Worker 到 Cloudflare 线上环境
wrangler deploy

# 部署 Pages 静态网页项目(指定打包目录,如 dist 或 build)
wrangler pages deploy ./dist

# 针对特定环境部署(需在 wrangler.toml 中配置 [env.staging] 等)
wrangler deploy --env staging
五、 核心资源管理指令Cloudflare 提供了多种存储与数据库服务,可以通过 Wrangler 直接在终端操作:

1. KV(键值存储)Bash# 创建 KV 命名空间
wrangler kv:namespace create "MY_KV"

# 写入与获取键值对
wrangler kv:key put --binding=MY_KV "my-key" "my-value"
wrangler kv:key get --binding=MY_KV "my-key"

2. D1(关系型 SQL 数据库)Bash# 创建 D1 数据库
wrangler d1 create my-db

# 执行 SQL 文件(本地测试)
wrangler d1 execute my-db --local --file=./schema.sql

# 执行 SQL 文件(生产环境)
wrangler d1 execute my-db --remote --file=./schema.sql

3. R2(对象存储)Bash# 创建 Bucket
wrangler r2 bucket create my-bucket

# 上传文件
wrangler r2 object put my-bucket/file.png --file=./local-file.png

4. Secrets(机密密钥管理)Bash# 添加加密环境变量(如 API Token,不会明文存入 wrangler.toml)
wrangler secret put API_KEY

# 查看已设置的密钥列表
wrangler secret list

六、 常见实用命令速查

实时日志   wrangler tail  实时查看线上Worker 的 console.log 和报错日志
部署历史   wrangler deployments list  查看历史部署版本
版本回滚   wrangler rollback <deployment-id>  回滚到指定的历史版本
帮助指南   wrangler --help  查看所有指令及参数说明
----------------------------------------

$ wrangler
wrangler

COMMANDS
  wrangler docs [search..]        📚 Open Wrangler's command documentation in your browser
  wrangler complete [shell]       ⌨️ Generate and handle shell completions

  wrangler email                  Manage Cloudflare Email services [open beta]

ACCOUNT
  wrangler auth                   🔐 Manage authentication
  wrangler login                  🔓 Login to Cloudflare
  wrangler logout                 🚪 Logout from Cloudflare
  wrangler whoami                 🕵️ Retrieve your user information

COMPUTE & AI
  wrangler agent-memory           🧠 Manage Agent Memory namespaces [private beta]
  wrangler ai                     🤖 Manage AI models
  wrangler ai-search              🔍 Manage AI Search instances [open beta]
  wrangler browser                🌐 Manage Browser Run sessions [open beta]
  wrangler containers             📦 Manage Containers
  wrangler delete [name]          🗑️ Delete a Worker from Cloudflare
  wrangler deploy [path]          🆙 Deploy a Worker to Cloudflare
  wrangler deployments            🚢 List and view the current and past deployments for your Worker
  wrangler dev [script]           👂 Start a local server for developing your Worker
  wrangler dispatch-namespace     🏗️ Manage dispatch namespaces
  wrangler flagship               🚩 Manage Flagship apps and feature flags [open beta]
  wrangler init [name]            📥 Initialize a basic Worker
  wrangler pages                  ⚡️ Configure Cloudflare Pages
  wrangler preview [script]       👀 Create a Preview deployment of the current Worker [open beta]
  wrangler queues                 📬 Manage Workers Queues
  wrangler rollback [version-id]  🔙 Rollback a deployment for a Worker
  wrangler secret                 🤫 Generate a secret that can be referenced in a Worker
  wrangler setup                  🪄 Setup a project to work on Cloudflare
  wrangler tail [worker]          🦚 Start a log tailing session for a Worker
  wrangler triggers               🎯 Updates the triggers of your current deployment [experimental]
  wrangler types [path]           📝 Generate types from your Worker configuration
  wrangler versions               🫧 List, view, upload and deploy Versions of your Worker to Cloudflare
  wrangler vpc                    🌐 Manage VPC [open beta]
  wrangler workflows              🔁 Manage Workflows

STORAGE & DATABASES
  wrangler artifacts              🧱 Manage Artifacts namespaces and repos [private beta]
  wrangler d1                     🗄️ Manage Workers D1 databases
  wrangler hyperdrive             🚀 Manage Hyperdrive databases
  wrangler kv                     🗂️ Manage Workers KV Namespaces
  wrangler pipelines              🚰 Manage Cloudflare Pipelines [open beta]
  wrangler r2                     📦 Manage R2 buckets & objects
  wrangler secrets-store          🔐 Manage the Secrets Store [open beta]
  wrangler vectorize              🧮 Manage Vectorize indexes

NETWORKING & SECURITY
  wrangler cert                   🪪 Manage client mTLS certificates and CA certificate chains used for secured connections [open beta]
  wrangler mtls-certificate       🪪 Manage certificates used for mTLS connections
  wrangler tunnel                 🚇 Manage Cloudflare Tunnels [experimental]
  wrangler turnstile              🛡️ Manage Turnstile widgets [alpha]

GLOBAL FLAGS
  -c, --config          Path to Wrangler configuration file  [string]
      --cwd             Run as if Wrangler was started in the specified directory instead of the current working directory  [string]
  -e, --env             Environment to use for operations, and for selecting .env and .dev.vars files  [string]
      --env-file        Path to an .env file to load - can be specified multiple times - values from earlier files are overridden by values in later files  [array]
  -h, --help            Show help  [boolean]
      --install-skills  Install Cloudflare skills for detected AI coding agents before running the command  [boolean] [default: false]
      --profile         Use a specific auth profile  [string]
  -v, --version         Show version number  [boolean]

Please report any issues to https://github.com/cloudflare/workers-sdk/issues/new/choose
----------------


https://developers.cloudflare.com/workers/wrangler/
-----------------------------------------

相关帖子: https://briteming.blogspot.com/2026/09/cloudflare-pages.html

No comments:

Post a Comment