wrangler

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Wrangler CLI

Wrangler CLI

Deploy, develop, and manage Cloudflare Workers and associated resources.
用于部署、开发和管理Cloudflare Workers及相关资源。

FIRST: Verify Wrangler Installation

第一步:验证Wrangler安装

bash
wrangler --version  # Requires v4.x+
If not installed:
bash
npm install -D wrangler@latest
bash
wrangler --version  # Requires v4.x+
如果未安装:
bash
npm install -D wrangler@latest

Key Guidelines

核心指南

  • Use
    wrangler.jsonc
    : Prefer JSON config over TOML. Newer features are JSON-only.
  • Set
    compatibility_date
    : Use a recent date (within 30 days). Check https://developers.cloudflare.com/workers/configuration/compatibility-dates/
  • Generate types after config changes: Run
    wrangler types
    to update TypeScript bindings.
  • Local dev defaults to local storage: Bindings use local simulation unless
    remote: true
    .
  • Validate config before deploy: Run
    wrangler check
    to catch errors early.
  • Use environments for staging/prod: Define
    env.staging
    and
    env.production
    in config.
  • 使用
    wrangler.jsonc
    :优先使用JSON配置而非TOML。较新的功能仅支持JSON格式。
  • 设置
    compatibility_date
    :使用最近30天内的日期。查看https://developers.cloudflare.com/workers/configuration/compatibility-dates/
  • 配置变更后生成类型:运行
    wrangler types
    更新TypeScript绑定。
  • 本地开发默认使用本地存储:除非设置
    remote: true
    ,否则绑定使用本地模拟。
  • 部署前验证配置:运行
    wrangler check
    提前发现错误。
  • 为预发布/生产环境使用多环境配置:在配置中定义
    env.staging
    env.production

Quick Start: New Worker

快速开始:创建新Worker

bash
undefined
bash
undefined

Initialize new project

Initialize new project

npx wrangler init my-worker
npx wrangler init my-worker

Or with a framework

Or with a framework

npx create-cloudflare@latest my-app
undefined
npx create-cloudflare@latest my-app
undefined

Quick Reference: Core Commands

快速参考:核心命令

TaskCommand
Start local dev server
wrangler dev
Deploy to Cloudflare
wrangler deploy
Deploy dry run
wrangler deploy --dry-run
Generate TypeScript types
wrangler types
Validate configuration
wrangler check
View live logs
wrangler tail
Delete Worker
wrangler delete
Auth status
wrangler whoami

任务命令
启动本地开发服务器
wrangler dev
部署到Cloudflare
wrangler deploy
部署预演
wrangler deploy --dry-run
生成TypeScript类型
wrangler types
验证配置
wrangler check
查看实时日志
wrangler tail
删除Worker
wrangler delete
认证状态
wrangler whoami

Configuration (wrangler.jsonc)

配置(wrangler.jsonc)

Minimal Config

最简配置

jsonc
{
  "$schema": "./node_modules/wrangler/config-schema.json",
  "name": "my-worker",
  "main": "src/index.ts",
  "compatibility_date": "2026-01-01"
}
jsonc
{
  "$schema": "./node_modules/wrangler/config-schema.json",
  "name": "my-worker",
  "main": "src/index.ts",
  "compatibility_date": "2026-01-01"
}

Full Config with Bindings

包含绑定的完整配置

jsonc
{
  "$schema": "./node_modules/wrangler/config-schema.json",
  "name": "my-worker",
  "main": "src/index.ts",
  "compatibility_date": "2026-01-01",
  "compatibility_flags": ["nodejs_compat_v2"],

  // Environment variables
  "vars": {
    "ENVIRONMENT": "production"
  },

  // KV Namespace
  "kv_namespaces": [
    { "binding": "KV", "id": "<KV_NAMESPACE_ID>" }
  ],

  // R2 Bucket
  "r2_buckets": [
    { "binding": "BUCKET", "bucket_name": "my-bucket" }
  ],

  // D1 Database
  "d1_databases": [
    { "binding": "DB", "database_name": "my-db", "database_id": "<DB_ID>" }
  ],

  // Workers AI (always remote)
  "ai": { "binding": "AI" },

  // Vectorize
  "vectorize": [
    { "binding": "VECTOR_INDEX", "index_name": "my-index" }
  ],

  // Hyperdrive
  "hyperdrive": [
    { "binding": "HYPERDRIVE", "id": "<HYPERDRIVE_ID>" }
  ],

  // Durable Objects
  "durable_objects": {
    "bindings": [
      { "name": "COUNTER", "class_name": "Counter" }
    ]
  },

  // Cron triggers
  "triggers": {
    "crons": ["0 * * * *"]
  },

  // Environments
  "env": {
    "staging": {
      "name": "my-worker-staging",
      "vars": { "ENVIRONMENT": "staging" }
    }
  }
}
jsonc
{
  "$schema": "./node_modules/wrangler/config-schema.json",
  "name": "my-worker",
  "main": "src/index.ts",
  "compatibility_date": "2026-01-01",
  "compatibility_flags": ["nodejs_compat_v2"],

  // Environment variables
  "vars": {
    "ENVIRONMENT": "production"
  },

  // KV Namespace
  "kv_namespaces": [
    { "binding": "KV", "id": "<KV_NAMESPACE_ID>" }
  ],

  // R2 Bucket
  "r2_buckets": [
    { "binding": "BUCKET", "bucket_name": "my-bucket" }
  ],

  // D1 Database
  "d1_databases": [
    { "binding": "DB", "database_name": "my-db", "database_id": "<DB_ID>" }
  ],

  // Workers AI (always remote)
  "ai": { "binding": "AI" },

  // Vectorize
  "vectorize": [
    { "binding": "VECTOR_INDEX", "index_name": "my-index" }
  ],

  // Hyperdrive
  "hyperdrive": [
    { "binding": "HYPERDRIVE", "id": "<HYPERDRIVE_ID>" }
  ],

  // Durable Objects
  "durable_objects": {
    "bindings": [
      { "name": "COUNTER", "class_name": "Counter" }
    ]
  },

  // Cron triggers
  "triggers": {
    "crons": ["0 * * * *"]
  },

  // Environments
  "env": {
    "staging": {
      "name": "my-worker-staging",
      "vars": { "ENVIRONMENT": "staging" }
    }
  }
}

Generate Types from Config

从配置生成类型

bash
undefined
bash
undefined

Generate worker-configuration.d.ts

Generate worker-configuration.d.ts

wrangler types
wrangler types

Custom output path

Custom output path

wrangler types ./src/env.d.ts
wrangler types ./src/env.d.ts

Check types are up to date (CI)

Check types are up to date (CI)

wrangler types --check

---
wrangler types --check

---

Local Development

本地开发

Start Dev Server

启动开发服务器

bash
undefined
bash
undefined

Local mode (default) - uses local storage simulation

Local mode (default) - uses local storage simulation

wrangler dev
wrangler dev

With specific environment

With specific environment

wrangler dev --env staging
wrangler dev --env staging

Force local-only (disable remote bindings)

Force local-only (disable remote bindings)

wrangler dev --local
wrangler dev --local

Remote mode - runs on Cloudflare edge (legacy)

Remote mode - runs on Cloudflare edge (legacy)

wrangler dev --remote
wrangler dev --remote

Custom port

Custom port

wrangler dev --port 8787
wrangler dev --port 8787

Live reload for HTML changes

Live reload for HTML changes

wrangler dev --live-reload
wrangler dev --live-reload

Test scheduled/cron handlers

Test scheduled/cron handlers

wrangler dev --test-scheduled
wrangler dev --test-scheduled
undefined
undefined

Remote Bindings for Local Dev

本地开发使用远程绑定

Use
remote: true
in binding config to connect to real resources while running locally:
jsonc
{
  "r2_buckets": [
    { "binding": "BUCKET", "bucket_name": "my-bucket", "remote": true }
  ],
  "ai": { "binding": "AI", "remote": true },
  "vectorize": [
    { "binding": "INDEX", "index_name": "my-index", "remote": true }
  ]
}
Recommended remote bindings: AI (required), Vectorize, Browser Rendering, mTLS, Images.
在绑定配置中设置
remote: true
,即可在本地运行时连接到真实资源:
jsonc
{
  "r2_buckets": [
    { "binding": "BUCKET", "bucket_name": "my-bucket", "remote": true }
  ],
  "ai": { "binding": "AI", "remote": true },
  "vectorize": [
    { "binding": "INDEX", "index_name": "my-index", "remote": true }
  ]
}
推荐使用远程绑定的服务:AI(必须)、Vectorize、Browser Rendering、mTLS、Images。

Local Secrets

本地密钥

Create
.dev.vars
for local development secrets:
API_KEY=local-dev-key
DATABASE_URL=postgres://localhost:5432/dev

创建
.dev.vars
文件用于存储本地开发密钥:
API_KEY=local-dev-key
DATABASE_URL=postgres://localhost:5432/dev

Deployment

部署

Deploy Worker

部署Worker

bash
undefined
bash
undefined

Deploy to production

Deploy to production

wrangler deploy
wrangler deploy

Deploy specific environment

Deploy specific environment

wrangler deploy --env staging
wrangler deploy --env staging

Dry run (validate without deploying)

Dry run (validate without deploying)

wrangler deploy --dry-run
wrangler deploy --dry-run

Keep dashboard-set variables

Keep dashboard-set variables

wrangler deploy --keep-vars
wrangler deploy --keep-vars

Minify code

Minify code

wrangler deploy --minify
undefined
wrangler deploy --minify
undefined

Manage Secrets

管理密钥

bash
undefined
bash
undefined

Set secret interactively

Set secret interactively

wrangler secret put API_KEY
wrangler secret put API_KEY

Set from stdin

Set from stdin

echo "secret-value" | wrangler secret put API_KEY
echo "secret-value" | wrangler secret put API_KEY

List secrets

List secrets

wrangler secret list
wrangler secret list

Delete secret

Delete secret

wrangler secret delete API_KEY
wrangler secret delete API_KEY

Bulk secrets from JSON file

Bulk secrets from JSON file

wrangler secret bulk secrets.json
undefined
wrangler secret bulk secrets.json
undefined

Versions and Rollback

版本与回滚

bash
undefined
bash
undefined

List recent versions

List recent versions

wrangler versions list
wrangler versions list

View specific version

View specific version

wrangler versions view <VERSION_ID>
wrangler versions view <VERSION_ID>

Rollback to previous version

Rollback to previous version

wrangler rollback
wrangler rollback

Rollback to specific version

Rollback to specific version

wrangler rollback <VERSION_ID>

---
wrangler rollback <VERSION_ID>

---

KV (Key-Value Store)

KV(键值存储)

Manage Namespaces

管理命名空间

bash
undefined
bash
undefined

Create namespace

Create namespace

wrangler kv namespace create MY_KV
wrangler kv namespace create MY_KV

List namespaces

List namespaces

wrangler kv namespace list
wrangler kv namespace list

Delete namespace

Delete namespace

wrangler kv namespace delete --namespace-id <ID>
undefined
wrangler kv namespace delete --namespace-id <ID>
undefined

Manage Keys

管理键

bash
undefined
bash
undefined

Put value

Put value

wrangler kv key put --namespace-id <ID> "key" "value"
wrangler kv key put --namespace-id <ID> "key" "value"

Put with expiration (seconds)

Put with expiration (seconds)

wrangler kv key put --namespace-id <ID> "key" "value" --expiration-ttl 3600
wrangler kv key put --namespace-id <ID> "key" "value" --expiration-ttl 3600

Get value

Get value

wrangler kv key get --namespace-id <ID> "key"
wrangler kv key get --namespace-id <ID> "key"

List keys

List keys

wrangler kv key list --namespace-id <ID>
wrangler kv key list --namespace-id <ID>

Delete key

Delete key

wrangler kv key delete --namespace-id <ID> "key"
wrangler kv key delete --namespace-id <ID> "key"

Bulk put from JSON

Bulk put from JSON

wrangler kv bulk put --namespace-id <ID> data.json
undefined
wrangler kv bulk put --namespace-id <ID> data.json
undefined

Config Binding

配置绑定

jsonc
{
  "kv_namespaces": [
    { "binding": "CACHE", "id": "<NAMESPACE_ID>" }
  ]
}

jsonc
{
  "kv_namespaces": [
    { "binding": "CACHE", "id": "<NAMESPACE_ID>" }
  ]
}

R2 (Object Storage)

R2(对象存储)

Manage Buckets

管理存储桶

bash
undefined
bash
undefined

Create bucket

Create bucket

wrangler r2 bucket create my-bucket
wrangler r2 bucket create my-bucket

Create with location hint

Create with location hint

wrangler r2 bucket create my-bucket --location wnam
wrangler r2 bucket create my-bucket --location wnam

List buckets

List buckets

wrangler r2 bucket list
wrangler r2 bucket list

Get bucket info

Get bucket info

wrangler r2 bucket info my-bucket
wrangler r2 bucket info my-bucket

Delete bucket

Delete bucket

wrangler r2 bucket delete my-bucket
undefined
wrangler r2 bucket delete my-bucket
undefined

Manage Objects

管理对象

bash
undefined
bash
undefined

Upload object

Upload object

wrangler r2 object put my-bucket/path/file.txt --file ./local-file.txt
wrangler r2 object put my-bucket/path/file.txt --file ./local-file.txt

Download object

Download object

wrangler r2 object get my-bucket/path/file.txt
wrangler r2 object get my-bucket/path/file.txt

Delete object

Delete object

wrangler r2 object delete my-bucket/path/file.txt
undefined
wrangler r2 object delete my-bucket/path/file.txt
undefined

Config Binding

配置绑定

jsonc
{
  "r2_buckets": [
    { "binding": "ASSETS", "bucket_name": "my-bucket" }
  ]
}

jsonc
{
  "r2_buckets": [
    { "binding": "ASSETS", "bucket_name": "my-bucket" }
  ]
}

D1 (SQL Database)

D1(SQL数据库)

Manage Databases

管理数据库

bash
undefined
bash
undefined

Create database

Create database

wrangler d1 create my-database
wrangler d1 create my-database

Create with location

Create with location

wrangler d1 create my-database --location wnam
wrangler d1 create my-database --location wnam

List databases

List databases

wrangler d1 list
wrangler d1 list

Get database info

Get database info

wrangler d1 info my-database
wrangler d1 info my-database

Delete database

Delete database

wrangler d1 delete my-database
undefined
wrangler d1 delete my-database
undefined

Execute SQL

执行SQL

bash
undefined
bash
undefined

Execute SQL command (remote)

Execute SQL command (remote)

wrangler d1 execute my-database --remote --command "SELECT * FROM users"
wrangler d1 execute my-database --remote --command "SELECT * FROM users"

Execute SQL file (remote)

Execute SQL file (remote)

wrangler d1 execute my-database --remote --file ./schema.sql
wrangler d1 execute my-database --remote --file ./schema.sql

Execute locally

Execute locally

wrangler d1 execute my-database --local --command "SELECT * FROM users"
undefined
wrangler d1 execute my-database --local --command "SELECT * FROM users"
undefined

Migrations

迁移

bash
undefined
bash
undefined

Create migration

Create migration

wrangler d1 migrations create my-database create_users_table
wrangler d1 migrations create my-database create_users_table

List pending migrations

List pending migrations

wrangler d1 migrations list my-database --local
wrangler d1 migrations list my-database --local

Apply migrations locally

Apply migrations locally

wrangler d1 migrations apply my-database --local
wrangler d1 migrations apply my-database --local

Apply migrations to remote

Apply migrations to remote

wrangler d1 migrations apply my-database --remote
undefined
wrangler d1 migrations apply my-database --remote
undefined

Export/Backup

导出/备份

bash
undefined
bash
undefined

Export schema and data

Export schema and data

wrangler d1 export my-database --remote --output backup.sql
wrangler d1 export my-database --remote --output backup.sql

Export schema only

Export schema only

wrangler d1 export my-database --remote --output schema.sql --no-data
undefined
wrangler d1 export my-database --remote --output schema.sql --no-data
undefined

Config Binding

配置绑定

jsonc
{
  "d1_databases": [
    {
      "binding": "DB",
      "database_name": "my-database",
      "database_id": "<DATABASE_ID>",
      "migrations_dir": "./migrations"
    }
  ]
}

jsonc
{
  "d1_databases": [
    {
      "binding": "DB",
      "database_name": "my-database",
      "database_id": "<DATABASE_ID>",
      "migrations_dir": "./migrations"
    }
  ]
}

Vectorize (Vector Database)

Vectorize(向量数据库)

Manage Indexes

管理索引

bash
undefined
bash
undefined

Create index with dimensions

Create index with dimensions

wrangler vectorize create my-index --dimensions 768 --metric cosine
wrangler vectorize create my-index --dimensions 768 --metric cosine

Create with preset (auto-configures dimensions/metric)

Create with preset (auto-configures dimensions/metric)

wrangler vectorize create my-index --preset @cf/baai/bge-base-en-v1.5
wrangler vectorize create my-index --preset @cf/baai/bge-base-en-v1.5

List indexes

List indexes

wrangler vectorize list
wrangler vectorize list

Get index info

Get index info

wrangler vectorize get my-index
wrangler vectorize get my-index

Delete index

Delete index

wrangler vectorize delete my-index
undefined
wrangler vectorize delete my-index
undefined

Manage Vectors

管理向量

bash
undefined
bash
undefined

Insert vectors from NDJSON file

Insert vectors from NDJSON file

wrangler vectorize insert my-index --file vectors.ndjson
wrangler vectorize insert my-index --file vectors.ndjson

Query vectors

Query vectors

wrangler vectorize query my-index --vector "[0.1, 0.2, ...]" --top-k 10
undefined
wrangler vectorize query my-index --vector "[0.1, 0.2, ...]" --top-k 10
undefined

Config Binding

配置绑定

jsonc
{
  "vectorize": [
    { "binding": "SEARCH_INDEX", "index_name": "my-index" }
  ]
}

jsonc
{
  "vectorize": [
    { "binding": "SEARCH_INDEX", "index_name": "my-index" }
  ]
}

Hyperdrive (Database Accelerator)

Hyperdrive(数据库加速器)

Manage Configs

管理配置

bash
undefined
bash
undefined

Create config

Create config

wrangler hyperdrive create my-hyperdrive
--connection-string "postgres://user:pass@host:5432/database"
wrangler hyperdrive create my-hyperdrive
--connection-string "postgres://user:pass@host:5432/database"

List configs

List configs

wrangler hyperdrive list
wrangler hyperdrive list

Get config details

Get config details

wrangler hyperdrive get <HYPERDRIVE_ID>
wrangler hyperdrive get <HYPERDRIVE_ID>

Update config

Update config

wrangler hyperdrive update <HYPERDRIVE_ID> --origin-password "new-password"
wrangler hyperdrive update <HYPERDRIVE_ID> --origin-password "new-password"

Delete config

Delete config

wrangler hyperdrive delete <HYPERDRIVE_ID>
undefined
wrangler hyperdrive delete <HYPERDRIVE_ID>
undefined

Config Binding

配置绑定

jsonc
{
  "compatibility_flags": ["nodejs_compat_v2"],
  "hyperdrive": [
    { "binding": "HYPERDRIVE", "id": "<HYPERDRIVE_ID>" }
  ]
}

jsonc
{
  "compatibility_flags": ["nodejs_compat_v2"],
  "hyperdrive": [
    { "binding": "HYPERDRIVE", "id": "<HYPERDRIVE_ID>" }
  ]
}

Workers AI

Workers AI

List Models

列出模型

bash
undefined
bash
undefined

List available models

List available models

wrangler ai models
wrangler ai models

List finetunes

List finetunes

wrangler ai finetune list
undefined
wrangler ai finetune list
undefined

Config Binding

配置绑定

jsonc
{
  "ai": { "binding": "AI" }
}
Note: Workers AI always runs remotely and incurs usage charges even in local dev.

jsonc
{
  "ai": { "binding": "AI" }
}
注意:Workers AI始终在远程运行,即使在本地开发时也会产生使用费用。

Queues

Queues(队列)

Manage Queues

管理队列

bash
undefined
bash
undefined

Create queue

Create queue

wrangler queues create my-queue
wrangler queues create my-queue

List queues

List queues

wrangler queues list
wrangler queues list

Delete queue

Delete queue

wrangler queues delete my-queue
wrangler queues delete my-queue

Add consumer to queue

Add consumer to queue

wrangler queues consumer add my-queue my-worker
wrangler queues consumer add my-queue my-worker

Remove consumer

Remove consumer

wrangler queues consumer remove my-queue my-worker
undefined
wrangler queues consumer remove my-queue my-worker
undefined

Config Binding

配置绑定

jsonc
{
  "queues": {
    "producers": [
      { "binding": "MY_QUEUE", "queue": "my-queue" }
    ],
    "consumers": [
      {
        "queue": "my-queue",
        "max_batch_size": 10,
        "max_batch_timeout": 30
      }
    ]
  }
}

jsonc
{
  "queues": {
    "producers": [
      { "binding": "MY_QUEUE", "queue": "my-queue" }
    ],
    "consumers": [
      {
        "queue": "my-queue",
        "max_batch_size": 10,
        "max_batch_timeout": 30
      }
    ]
  }
}

Containers

Containers(容器)

Build and Push Images

构建并推送镜像

bash
undefined
bash
undefined

Build container image

Build container image

wrangler containers build -t my-app:latest .
wrangler containers build -t my-app:latest .

Build and push in one command

Build and push in one command

wrangler containers build -t my-app:latest . --push
wrangler containers build -t my-app:latest . --push

Push existing image to Cloudflare registry

Push existing image to Cloudflare registry

wrangler containers push my-app:latest
undefined
wrangler containers push my-app:latest
undefined

Manage Containers

管理容器

bash
undefined
bash
undefined

List containers

List containers

wrangler containers list
wrangler containers list

Get container info

Get container info

wrangler containers info <CONTAINER_ID>
wrangler containers info <CONTAINER_ID>

Delete container

Delete container

wrangler containers delete <CONTAINER_ID>
undefined
wrangler containers delete <CONTAINER_ID>
undefined

Manage Images

管理镜像

bash
undefined
bash
undefined

List images in registry

List images in registry

wrangler containers images list
wrangler containers images list

Delete image

Delete image

wrangler containers images delete my-app:latest
undefined
wrangler containers images delete my-app:latest
undefined

Manage External Registries

管理外部镜像仓库

bash
undefined
bash
undefined

List configured registries

List configured registries

wrangler containers registries list
wrangler containers registries list

Configure external registry (e.g., ECR)

Configure external registry (e.g., ECR)

wrangler containers registries configure <DOMAIN>
--public-credential <AWS_ACCESS_KEY_ID>
wrangler containers registries configure <DOMAIN>
--public-credential <AWS_ACCESS_KEY_ID>

Delete registry configuration

Delete registry configuration

wrangler containers registries delete <DOMAIN>

---
wrangler containers registries delete <DOMAIN>

---

Workflows

Workflows(工作流)

Manage Workflows

管理工作流

bash
undefined
bash
undefined

List workflows

List workflows

wrangler workflows list
wrangler workflows list

Describe workflow

Describe workflow

wrangler workflows describe my-workflow
wrangler workflows describe my-workflow

Trigger workflow instance

Trigger workflow instance

wrangler workflows trigger my-workflow
wrangler workflows trigger my-workflow

Trigger with parameters

Trigger with parameters

wrangler workflows trigger my-workflow --params '{"key": "value"}'
wrangler workflows trigger my-workflow --params '{"key": "value"}'

Delete workflow

Delete workflow

wrangler workflows delete my-workflow
undefined
wrangler workflows delete my-workflow
undefined

Manage Workflow Instances

管理工作流实例

bash
undefined
bash
undefined

List instances

List instances

wrangler workflows instances list my-workflow
wrangler workflows instances list my-workflow

Describe instance

Describe instance

wrangler workflows instances describe my-workflow <INSTANCE_ID>
wrangler workflows instances describe my-workflow <INSTANCE_ID>

Terminate instance

Terminate instance

wrangler workflows instances terminate my-workflow <INSTANCE_ID>
undefined
wrangler workflows instances terminate my-workflow <INSTANCE_ID>
undefined

Config Binding

配置绑定

jsonc
{
  "workflows": [
    {
      "binding": "MY_WORKFLOW",
      "name": "my-workflow",
      "class_name": "MyWorkflow"
    }
  ]
}

jsonc
{
  "workflows": [
    {
      "binding": "MY_WORKFLOW",
      "name": "my-workflow",
      "class_name": "MyWorkflow"
    }
  ]
}

Pipelines

Pipelines(流水线)

Manage Pipelines

管理流水线

bash
undefined
bash
undefined

Create pipeline

Create pipeline

wrangler pipelines create my-pipeline --r2 my-bucket
wrangler pipelines create my-pipeline --r2 my-bucket

List pipelines

List pipelines

wrangler pipelines list
wrangler pipelines list

Show pipeline details

Show pipeline details

wrangler pipelines show my-pipeline
wrangler pipelines show my-pipeline

Update pipeline

Update pipeline

wrangler pipelines update my-pipeline --batch-max-mb 100
wrangler pipelines update my-pipeline --batch-max-mb 100

Delete pipeline

Delete pipeline

wrangler pipelines delete my-pipeline
undefined
wrangler pipelines delete my-pipeline
undefined

Config Binding

配置绑定

jsonc
{
  "pipelines": [
    { "binding": "MY_PIPELINE", "pipeline": "my-pipeline" }
  ]
}

jsonc
{
  "pipelines": [
    { "binding": "MY_PIPELINE", "pipeline": "my-pipeline" }
  ]
}

Secrets Store

Secrets Store(密钥存储)

Manage Stores

存储管理

bash
undefined
bash
undefined

Create store

Create store

wrangler secrets-store store create my-store
wrangler secrets-store store create my-store

List stores

List stores

wrangler secrets-store store list
wrangler secrets-store store list

Delete store

Delete store

wrangler secrets-store store delete <STORE_ID>
undefined
wrangler secrets-store store delete <STORE_ID>
undefined

Manage Secrets in Store

存储中的密钥管理

bash
undefined
bash
undefined

Add secret to store

Add secret to store

wrangler secrets-store secret put <STORE_ID> my-secret
wrangler secrets-store secret put <STORE_ID> my-secret

List secrets in store

List secrets in store

wrangler secrets-store secret list <STORE_ID>
wrangler secrets-store secret list <STORE_ID>

Get secret

Get secret

wrangler secrets-store secret get <STORE_ID> my-secret
wrangler secrets-store secret get <STORE_ID> my-secret

Delete secret from store

Delete secret from store

wrangler secrets-store secret delete <STORE_ID> my-secret
undefined
wrangler secrets-store secret delete <STORE_ID> my-secret
undefined

Config Binding

配置绑定

jsonc
{
  "secrets_store_secrets": [
    {
      "binding": "MY_SECRET",
      "store_id": "<STORE_ID>",
      "secret_name": "my-secret"
    }
  ]
}

jsonc
{
  "secrets_store_secrets": [
    {
      "binding": "MY_SECRET",
      "store_id": "<STORE_ID>",
      "secret_name": "my-secret"
    }
  ]
}

Pages (Frontend Deployment)

Pages(前端部署)

bash
undefined
bash
undefined

Create Pages project

Create Pages project

wrangler pages project create my-site
wrangler pages project create my-site

Deploy directory to Pages

Deploy directory to Pages

wrangler pages deploy ./dist
wrangler pages deploy ./dist

Deploy with specific branch

Deploy with specific branch

wrangler pages deploy ./dist --branch main
wrangler pages deploy ./dist --branch main

List deployments

List deployments

wrangler pages deployment list --project-name my-site

---
wrangler pages deployment list --project-name my-site

---

Observability

可观测性

Tail Logs

查看日志

bash
undefined
bash
undefined

Stream live logs

Stream live logs

wrangler tail
wrangler tail

Tail specific Worker

Tail specific Worker

wrangler tail my-worker
wrangler tail my-worker

Filter by status

Filter by status

wrangler tail --status error
wrangler tail --status error

Filter by search term

Filter by search term

wrangler tail --search "error"
wrangler tail --search "error"

JSON output

JSON output

wrangler tail --format json
undefined
wrangler tail --format json
undefined

Config Logging

配置日志

jsonc
{
  "observability": {
    "enabled": true,
    "head_sampling_rate": 1
  }
}

jsonc
{
  "observability": {
    "enabled": true,
    "head_sampling_rate": 1
  }
}

Testing

测试

Local Testing with Vitest

使用Vitest进行本地测试

bash
npm install -D @cloudflare/vitest-pool-workers vitest
vitest.config.ts
:
typescript
import { defineWorkersConfig } from "@cloudflare/vitest-pool-workers/config";

export default defineWorkersConfig({
  test: {
    poolOptions: {
      workers: {
        wrangler: { configPath: "./wrangler.jsonc" },
      },
    },
  },
});
bash
npm install -D @cloudflare/vitest-pool-workers vitest
vitest.config.ts
:
typescript
import { defineWorkersConfig } from "@cloudflare/vitest-pool-workers/config";

export default defineWorkersConfig({
  test: {
    poolOptions: {
      workers: {
        wrangler: { configPath: "./wrangler.jsonc" },
      },
    },
  },
});

Test Scheduled Events

测试定时事件

bash
undefined
bash
undefined

Enable in dev

Enable in dev

wrangler dev --test-scheduled
wrangler dev --test-scheduled

Trigger via HTTP

Trigger via HTTP

Troubleshooting

故障排除

Common Issues

常见问题

IssueSolution
command not found: wrangler
Install:
npm install -D wrangler
Auth errorsRun
wrangler login
Config validation errorsRun
wrangler check
Type errors after config changeRun
wrangler types
Local storage not persistingCheck
.wrangler/state
directory
Binding undefined in WorkerVerify binding name matches config exactly
问题解决方案
command not found: wrangler
安装:
npm install -D wrangler
认证错误运行
wrangler login
配置验证错误运行
wrangler check
配置变更后出现类型错误运行
wrangler types
本地存储不持久检查
.wrangler/state
目录
Worker中绑定未定义验证绑定名称与配置完全匹配

Debug Commands

调试命令

bash
undefined
bash
undefined

Check auth status

Check auth status

wrangler whoami
wrangler whoami

Validate config

Validate config

wrangler check
wrangler check

View config schema

View config schema

wrangler docs configuration

---
wrangler docs configuration

---

Best Practices

最佳实践

  1. Version control
    wrangler.jsonc
    : Treat as source of truth for Worker config.
  2. Use automatic provisioning: Omit resource IDs for auto-creation on deploy.
  3. Run
    wrangler types
    in CI
    : Add to build step to catch binding mismatches.
  4. Use environments: Separate staging/production with
    env.staging
    ,
    env.production
    .
  5. Set
    compatibility_date
    : Update quarterly to get new runtime features.
  6. Use
    .dev.vars
    for local secrets
    : Never commit secrets to config.
  7. Test locally first:
    wrangler dev
    with local bindings before deploying.
  8. Use
    --dry-run
    before major deploys
    : Validate changes without deployment.
  1. wrangler.jsonc
    进行版本控制
    :将其作为Worker配置的唯一可信来源。
  2. 使用自动配置:省略资源ID,以便在部署时自动创建资源。
  3. 在CI中运行
    wrangler types
    :将其添加到构建步骤中,以捕获绑定不匹配的问题。
  4. 使用多环境配置:通过
    env.staging
    env.production
    分离预发布和生产环境。
  5. 设置
    compatibility_date
    :每季度更新一次,以获取新的运行时功能。
  6. 使用
    .dev.vars
    存储本地密钥
    :切勿将密钥提交到配置文件中。
  7. 先在本地测试:在部署前使用
    wrangler dev
    和本地绑定进行测试。
  8. 在重大部署前使用
    --dry-run
    :在不实际部署的情况下验证变更。