type
Post
status
Published
date
Apr 12, 2026
slug
cloudflare-r2-image-hosting
summary
手把手教你用 Cloudflare R2 搭建免费图床,含 wrangler 安装、bucket 创建、公开访问配置与自定义域名绑定全流程,出站流量完全免费,适合博主和知识库用户。
tags
AI
Claude
工具
category
知识分享
icon
password
这篇文章记录如何用 Claude 搭配 Cloudflare R2 搭建一个图床,并绑定自定义域名,最终让图片可以通过稳定的公开 URL 引用到博客等任意平台。
AI的加持下,几乎可以做到零门槛维护图床了~

为什么用 R2

Cloudflare R2 的核心优势是出站流量免费。传统的 AWS S3 每次有人加载图片都会产生出站费用,R2 这部分完全不收费。
免费额度(每月):
项目
免费额度
存储
10 GB
写入(A 类操作)
100 万次
读取(B 类操作)
1000 万次
出站流量
免费
对于博客、知识库的图床场景,10 GB 基本永远用不完。

前置条件

  • 一个 Cloudflare 账号
  • 域名已托管在 Cloudflare(用于后续绑定自定义域名)
  • Node.js 已安装(用于安装 wrangler)

第一步:开启 R2 服务

R2 默认未开启,需要手动激活:
  1. 登录 Cloudflare Dashboard
  1. 左侧菜单找到 R2 Object Storage
  1. 点击进入,确认开启 R2

第二步:安装 wrangler

wrangler 是 Cloudflare 官方的命令行工具,用于管理 R2、Workers 等资源。
验证安装:
输出版本号即为安装成功。

第三步:登录 Cloudflare

命令执行后会自动打开浏览器,完成授权即可。
验证登录状态:

第四步:创建 R2 Bucket

Bucket 名称可以自定义,建议用项目名或品牌名作为前缀,方便后续管理。

第五步:开启公开访问

Bucket 默认私有,需要开启公开访问才能让图片通过 URL 被任何人访问。
执行成功后会返回一个 r2.dev 的公开域名,格式如:
这个 r2.dev 域名可以直接用,但如果想用自己的域名,继续第六步。

第六步:绑定自定义域名

先获取域名所在的 Zone ID(需要在 Cloudflare Dashboard → 对应域名 → Overview 页面右侧找到),然后执行:
执行成功后,bucket 内容即可通过 https://assets.yourdomain.com 访问。
域名必须已经托管在 Cloudflare,否则无法完成绑定。

第七步:上传图片

使用 wrangler 上传本地图片到 R2,注意必须加 --remote 参数,否则只会写入本地模拟环境:
上传成功后,图片的公开 URL 为:
路径结构 bucket名/文件路径 对应 URL 域名/文件路径,可以用目录层级管理不同文章的图片。
wrangler 上传演示
wrangler 上传演示

常见问题

Q:上传后图片打不开?
检查以下两点:
  • 是否加了 --remote 参数,没有则只上传到了本地模拟。
  • Bucket 的公开访问是否已开启(dev-url enable 或自定义域名是否配置成功)。
Q:自定义域名绑定失败?
确认域名已经在 Cloudflare 托管(NS 记录指向 Cloudflare),未托管的域名无法通过 wrangler 直接绑定。
Q:r2.dev 和自定义域名有什么区别?
功能上没有区别,都能公开访问。自定义域名更专业、链接更短,适合长期使用。

用 AI Agent 全程代为操作

如果你在用 Claude Code,以上所有步骤都可以让 Agent 代为执行。核心是提前接入 Cloudflare MCP

第一步:接入 Cloudflare MCP

方式一:在 claude.ai 网页端配置(推荐)
登录 claude.ai → 进入 Settings → Connectors,找到 Cloudflare,点击连接并完成授权即可。
方式二:在 Claude Code 配置文件中手动添加
配置文件路径:~/.claude/claude_desktop_config.json(macOS/Linux)或 %APPDATA%\\Claude\\claude_desktop_config.json(Windows)。

第二步:让 Agent 接管操作

MCP 接入后,直接用自然语言描述目标即可:
帮我在 Cloudflare R2 创建一个叫 my-assets 的 bucket,开启公开访问,绑定域名 assets.yourdomain.com,然后把 /path/to/images 目录下的图片上传上去。
步骤
执行方式
查询账号、列出/创建 bucket
Cloudflare MCP
安装 wrangler
npm(命令行)
wrangler 登录授权
wrangler login(需浏览器确认)
开启公开访问 / 绑定域名 / 上传图片
wrangler CLI
整个流程只有一步需要你亲自操作:wrangler 首次登录的 OAuth 授权

总结

整个流程只有七步:
  1. 开启 R2 服务
  1. 安装 wrangler
  1. 登录 Cloudflare
  1. 创建 Bucket
  1. 开启公开访问
  1. 绑定自定义域名
  1. 上传图片并使用 URL
一次配置完成后,后续上传图片只需一条命令,图片立即可用,出站流量完全免费。
流媒体合租Windows 终端 & Codex 中文乱码终极解决方案
Loading...