CloudFlare-ImgBed是非常流行的免费开源图床方案。不仅完全免费,而且无需购买服务器,非常适合个人博客、笔记或日常分享使用。
下面一份保姆级的搭建教程,只需几分钟就能拥有属于自己的永久免费图床。
🛠️ 准备工作
在开始之前,请提前准备好以下 3 个免费账号:
- Cloudflare 账号:用于托管图床程序和存储图片。
- GitHub 账号:用于获取开源的图床项目代码。
- 一个域名(可选):如果你希望图片链接更好看、更稳定,建议准备一个域名并托管到 Cloudflare;如果没有,也可以直接使用 Cloudflare 赠送的免费二级域名(
.pages.dev)。
🚀 第一步:Fork 开源项目到 GitHub
- 打开 CloudFlare-ImgBed 的 GitHub 仓库页面:
https://github.com/MarSeventh/CloudFlare-ImgBed。 - 点击右上角的 Fork 按钮,将这个项目复刻(复制)一份到你自己的 GitHub 仓库中。
- 在弹出的页面中保持默认设置,直接点击 Create fork 即可。
☁️ 第二步:在 Cloudflare 中创建 Pages 项目
- 登录 Cloudflare 后台,在左侧菜单找到 计算和 AI (Workers & Pages)。
- 点击 创建应用程序 (Create application),然后选择 Pages 标签页,点击 连接到 Git (Connect to Git)。
- 授权并选择你刚刚 Fork 的
CloudFlare-ImgBed仓库,点击 开始设置 (Begin setup)。 - 在项目配置页面进行如下设置:
- 项目名称:可以随意填写(例如
my-imgbed)。 - 框架预设 (Framework preset):选择 无 (None)。
- 构建命令 (Build command):填入
npm install。 - 构建输出目录:/frontend-dist(很多教程这个地方让留空是不对的,输出目录不对,无法通过域名正常访问图床的)。
- 项目名称:可以随意填写(例如
- 点击 保存并部署 (Save and Deploy)。等待几分钟后,Cloudflare 会自动完成项目的初次部署。
💾 第三步:创建并绑定 KV 数据库与 R2 存储
为了让图床能正常保存设置和存储图片,我们需要配置两个核心服务:
1. 创建 KV 数据库(用于存储图床的配置信息)
- 回到 Cloudflare 后台,进入 存储和数据库 (Storage and Databases) -> Workers KV。
- 点击 创建命名空间 (Create a namespace),名称填写
img_url,然后点击创建。 - 再次回到你刚才创建的 Pages 项目后台,点击 设置 (Settings) -> 绑定 (Bindings) -> 添加绑定 (Add binding)。
- 变量名称填写
img_url,KV 命名空间选择你刚刚创建的那个,点击保存。
2. 创建 R2 存储桶(用于实际存放图片文件)
- 进入 Cloudflare 后台的 R2 对象存储,点击 创建存储桶 (Create Bucket),名称随意(比如
my-images),点击创建。 - 注意:首次使用 R2 需要绑定一张银行卡(Visa/Mastercard等)以激活服务,但在 10GB 免费额度内不会扣费。
- 同样回到 Pages 项目的 设置 (Settings) -> 绑定 (Bindings),再次 添加绑定 (Add binding)。
- 变量名称填写
img_r2,R2 存储桶选择你刚刚创建的那个,点击保存。
3. 重新部署生效
- 绑定完成后,进入 Pages 项目的 部署 (Deployments) 页面,找到最新的一次部署记录,点击右侧的三个点,选择 重试部署 (Retry deployment),让刚才的配置生效。
⚙️ 第四步:初始化图床后台设置
- 在 Pages 项目的部署页面,点击顶部的链接(通常是
https://你的项目名.pages.dev)访问你的图床。 - 首次进入,点击页面右下角的 设置 图标,进入管理后台。
- 开启 R2 存储:在【系统设置】->【上传设置】中,找到 Cloudflare R2 渠道,将其 启用。
- 设置安全密码(强烈建议):在【安全设置】中,设置 上传密码(防止别人盗用你的图床上传垃圾图片)和 管理员账户密码(保护你的后台管理权限)。
- 点击保存设置。
💡 进阶与使用小贴士
- 免费额度:Cloudflare R2 提供每月 10GB 的免费存储空间,且出口流量(下载图片产生的流量)完全免费。对于个人日常使用来说,这个容量非常充裕。
- 绑定自定义域名:在 Pages 项目的 自定义域名 (Custom domains) 选项中,你可以绑定自己的域名。这样你的图片链接就会变成
https://img.你的域名.com/xxx.jpg,更加美观且不受.pages.dev域名在国内偶尔抽风的影响。 - 多种上传方式:除了网页端拖拽上传,该图床还支持 API 上传、Telegram Bot 上传,甚至支持粘贴直接上传,非常方便。
- 图片管理:在后台你可以预览、搜索、批量删除已上传的图片,管理起来就像操作本地文件夹一样简单。