cloudflare官方工具 wrangler部署步骤,以 cloudflare-imgbed图床为例
但不知道有没有人跟我一样,不喜欢用一个平台去绑定另一个平台。
cloudflare pages 部署项目,纯静态的可以直接上传就行。而大多数项目是需要先构建,才能上传跑起来。
cloudflare pages 如果本地上传是不显示构建命令的。只有绑定 github 拉取的源码才能运行构建命令。
如
cloudflare-imgbed 是个很优秀的图床项目,可以直接白嫖 cloudflare pages 部署。存储可以对接 tg,r2,s3。让你的图床全白嫖。
官方教程写的很详细了:https://cfbed.sanyue.de/
但你要想本地上传源码,项目就需要先 npm install 构建。强迫症我又不想在本地电脑安装一大堆 nodejs 依赖插件构建项目。
于是打算让服务器构建项目。而 cloudflare官方工具 wrangler 可以命令行上传项目到 cf。
记下 Wrangler CLI 部署 步骤
如果你熟悉命令行,可以使用 Cloudflare 官方工具 Wrangler:
安装环境 Node.js
在 Linux 系统(如 Ubuntu、Debian、CentOS 等)上安装最新版 Node.js,不建议直接用 apt,因为官方源的版本通常非常陈旧。
以下是目前最推荐的两种方式:
方法一:使用 NodeSource 脚本安装(最快,适合生产环境)
这是直接从 Node.js 官方维护的二进制仓库安装最新版本的方法。
-
清理旧版本(如果有):
sudo apt-get remove nodejs npm -y -
执行安装脚本(以目前的最新版 v24 为例,如需 LTS 请改为
v22):curl -fsSL https://deb.nodesource.com | sudo -E bash - sudo apt-get install -y nodejs -
验证版本:
node -v # 应显示 v24
方法二:使用 nvm 安装(最灵活,强烈推荐)
nvm (Node Version Manager) 允许你在同一台机器上安装和切换多个 Node.js 版本,且不需要 sudo 权限。
-
安装 nvm:
curl -o- https://raw.githubusercontent.com | bash安装完后,请重启终端或运行
source ~/.bashrc使其生效。 -
安装最新版 Node.js:
nvm install node # 安装最新发布版 (Current) # 或者 nvm install --lts # 安装最新的长期支持版 -
设置默认版本:
nvm use node
安装 wrangler
-
安装工具:在终端执行
npm install -g wrangler。 -
登录账号:执行
wrangler login授权你的 Cloudflare 账号。 -
执行部署:进入源码目录,运行以下命令直接发布:
npx wrangler pages deploy . --project-name 你的项目名
如果你在服务器(如 Linux VPS)或没有浏览器的环境下操作,不能使用会自动跳转页面的 wrangler login。你可以通过 API 令牌 (API Token) 的方式进行身份验证,这是最稳妥的无浏览器登录方案:
- 获取 API 令牌
- 登录 Cloudflare 控制台。
- 点击右上角头像 -> 我的个人资料 (My Profile)。
- 点击左侧的 API 令牌 (API Tokens) -> 创建令牌。
- 使用 “编辑 Cloudflare Workers” 模板(这个模板权限最高,涵盖了 Pages 和 KV)。
- 在“账户资源”处选择你的账户,在“区域资源”处选择所有区域。
- 点击 继续以显示摘要 -> 创建令牌,然后复制那串长字符。
- 在终端配置令牌
在你的终端(命令行)中,不要运行 wrangler login,直接通过设置环境变量来“登录”:
Linux / macOS (Bash/Zsh):
export CLOUDFLARE_API_TOKEN="刚才复制的令牌"
Windows (CMD):
set CLOUDFLARE_API_TOKEN=刚才复制的令牌
3. 验证登录状态
运行以下命令查看是否识别到了你的账户:
npx wrangler whoami
如果显示了你的账号邮箱和 ID,说明已经成功绕过浏览器完成登录。
4. 继续部署
现在你可以继续执行之前的部署命令了:
npx wrangler pages deploy . --project-name 你的项目名
构建 cloudflare-imgbed
在你的项目根目录下执行,生成用于发布的静态资源:
# 安装依赖
npm install
上面的部署命令,上传静态资源。
npx wrangler pages deploy . --project-name 你的项目名
关键配置:绑定 KV 与 兼容性标志
跟官方一样,看上面官方的教程。
踩坑
报错:
npx wrangler pages deploy . --project-name img
⛅️ wrangler 4.68.1 (update available 4.69.0)─────────────────────────────────────────────X [ERROR]
A request to the Cloudflare API (/memberships) failed. Unable to authenticate request [code: 10001] If you think this is a bug, please open an issue at: https://github.com/cloudflare/workers-sdk/issues/new/choose🪵
Logs were written to
这个错误 code: 10001 表示 API 令牌(Token)校验失败。这通常是因为令牌过期、复制不全,或者环境变量在当前终端窗口中没有生效。
但实际并没有失效。
遇到的 [code: 10001] /memberships failed 报错是一个非常经典的问题。
即便你给 Token 配置了 Pages 编辑权限,Wrangler 在部署时仍会尝试访问 /memberships 接口来确认你的账户 ID。但因为你使用的是账户级 Token(Account Token),它没有权限访问这个用户级(User)的接口,从而导致认证失败。
快速修复方法:手动指定 Account ID
既然 Wrangler 自动获取 ID 失败,你只需要手动告诉它你的 Account ID 即可绕过这个报错。
根据你上一次 npx wrangler whoami 的输出,你的 Account ID 是:xxxx。
设置 Account ID 环境变量:
set CLOUDFLARE_ACCOUNT_ID=xxxx
再次尝试部署

说些什么吧!