682 字
3 分钟
Cloudflare Github 图床应用
Cloudflare Github 图床应用
Cf-Github-ImgBed 是一个基于 Cloudflare Pages + GitHub API 的轻量级图床服务,无需服务器,零成本部署。
✨ 特性
- 🚀 Cloudflare Pages 部署 — 全球 CDN 加速,零成本
- 🔐 AES + RSA 加密认证 — 安全的管理员登录
- 📱 TOTP 二次验证 — 支持 Google Authenticator
- 📤 多文件批量上传 — 拖拽、粘贴、批量管理
- 🗂️ 多仓库支持 — 每个仓库独立 Token 和 CDN
- 🎨 主题定制 — 8 种预设 + 自定义颜色
- 🌐 国际化 — 中文 / English
- 🔍 本地搜索排序 — 按名称、时间、大小
- 🖼️ 图片编辑 — 格式转换、质量压缩、尺寸调整
- 📋 批量操作 — 选择、删除、公开/私密、导出
- 📥 导出链接 — URL / Markdown / HTML / JSON / CSV
- 🔗 随机图片 API — 可配置的公开图片接口
- ⚡ API 限流 — 防止滥用
- 🔄 上传重试 — 可配置次数,智能跳过不可重试错误
- 📦 分页浏览 — 可配置每页数量
- 💾 KV 云端同步 — 设置和公开图片列表持久化
- 🖥️ 响应式设计 — 桌面、平板、手机
预览

部署
1. 部署到 Cloudflare Pages
- Fork 本仓库
- 进入 Cloudflare Dashboard → Workers & Pages
- 创建应用程序 → Pages → 连接到 Git
- 选择仓库,配置构建设置:
- 框架预设:
Vue - 构建命令:
npm run build - 输出目录:
dist
- 框架预设:
- 点击部署




2. 创建 KV 命名空间
- Workers KV → 创建命名空间
- 名称随意,如
imgbed-kv

3. 绑定 KV
在 Pages 项目 → Settings → Functions → KV namespace bindings:
| 变量名 | KV 命名空间 |
|---|---|
KV | 选择刚创建的命名空间 |

4. 配置环境变量
在 Pages 项目 → Settings → Environment variables:
| 变量名 | 必填 | 说明 |
|---|---|---|
GITHUB_TOKEN | ✅ | GitHub Personal Access Token(全局默认) |
ADMIN_PASSWORD | ✅ | 管理员密码 |
RSA_PUBLIC_KEY | ✅ | RSA 公钥(base64) |
RSA_PRIVATE_KEY | ✅ | RSA 私钥(base64) |

5. 生成 RSA 密钥对
复制你部署的域名,这里以your-site.pages.dev举例
编辑地址栏,在后面输入/generate-keys.html,回车,点击按钮生成,复制输出的环境变量值。
完整地址:https://your-site.pages.dev/generate-keys.html



注意: 填写完环境变量后需要重新部署一遍才可以生效!!!

6. 首次使用
- 访问部署的域名
- 输入管理员密码登录
- 进入设置 → 添加仓库,填写信息
注意: 请保证仓库中至少有一个文件(任意文件),否则无法上传图片
- 开始上传图片



注意: 需要保存设置之后才可以检查仓库是否可用

Github Token申请
前往 Github 点击右上角头像,选择 Settings -> Developer settings -> Personal access tokens -> Generate new token (classic)

填写Token名称,然后勾选 repo,点击 Generate token,然后复制生成的Token

Cloudflare Github 图床应用
https://blog.stoeaves.com/posts/cf-github-imgbed/ 评论加载中...