不需要服务器,0成本,搭建属于自己的个人图床
什么是图床
简单说就是一个专门存图片、能生成图片链接的服务。写博客、发公众号、做文档的时候经常会用到,有了图床就不用把图片塞在项目里占空间,也不用担心某个平台的图片链接失效。
市面上免费图床不少,但第三方图床总有跑路风险。自己搭一个最安心,而且用 Cloudflare 的方案完全免费。
为什么选 Cloudflare-ImgBed
这个项目(github.com/MarSeventh/CloudFlare-ImgBed)支持多种存储方式(R2、KV、D1、Telegram),部署在 Cloudflare Workers 上,全球 CDN 加速,而且支持通过 GitHub Actions 自动更新。
核心优势:零成本、无服务器、全球加速、数据可控。
准备工作
需要这些东西,后面一步步拿:
- GitHub 账号
- Cloudflare 账号(免费注册)
- Cloudflare Account ID
- Cloudflare API Token
- KV 或 D1 数据库(二选一)
不需要装任何软件,全程浏览器操作。
部署步骤
第一步:Fork 项目
打开 CloudFlare-ImgBed 仓库,点右上角 Fork。
第二步:获取 Cloudflare 信息
拿 Account ID 和 API Token:
- 登录 Cloudflare Dashboard
- 右上角头像 -> 我的个人资料 -> API 令牌
- 创建令牌,选模板「编辑 Cloudflare Workers」,一路下一步
- 生成的 Token 立刻复制保存,它只显示一次
- 回到 Dashboard 首页,右侧复制 Account ID
创建数据库(KV 和 D1 二选一):
方案 A - KV(读写更快):
- 存储和数据库 -> Workers KV -> 创建
- 名称填
img_url - 复制命名空间 ID
方案 B - D1(免费额度更高):
- 存储和数据库 -> D1 SQL 数据库 -> 创建
- 名称填
img_d1 - 复制数据库 ID
- 进入控制台,执行项目提供的
init.sql初始化
可选:创建 R2 存储桶(用来存图片)
存储和数据库 -> R2 对象存储 -> 创建,名称随意。
第三步:配置 GitHub Secrets
进入你 Fork 的仓库 -> Settings -> Secrets and variables -> Actions -> New repository secret,依次添加:
| Secret 名称 | 值 | 必填 |
|---|---|---|
CLOUDFLARE_API_TOKEN | 你的 API Token | 是 |
CLOUDFLARE_ACCOUNT_ID | 你的 Account ID | 是 |
KV_NAMESPACE_ID | KV 命名空间 ID | KV/D1 二选一 |
D1_DATABASE_ID | D1 数据库 ID | KV/D1 二选一 |
R2_BUCKET_NAME | R2 存储桶名 | 可选 |
注意一定要用 Secrets 而不是 Variables,Variables 是公开的。
第四步:部署
- 进入仓库 Actions 页面
- 选择 Deploy to Cloudflare Workers
- 点 Run workflow,分支选 main
- 等 1-3 分钟
看到绿色勾就部署成功了。
如果想以后自动同步上游更新,可以启用 Upstream Sync workflow,以后上游有新版本会自动同步并重新部署。
部署后
访问 Worker 地址就能使用图床了。不过第一次使用需要先在后台管理面板配置存储渠道(R2 或 Telegram),配好之后才能正常上传图片。
常见问题
- 部署失败:检查 Secrets 有没有填错,Token 权限对不对
- 无法上传图片:还没配置存储渠道,去后台绑定 R2 或 Telegram
- 链接打不开:确认 Worker 已启用,名称和子域名拼写正确
文字版教程:fqzlr.com/posts/blog/img-bed
视频链接:BV1MFRtBbE9B
部分内容可能已过时






