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 预览图2 预览图3

部署#

1. 部署到 Cloudflare Pages#

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

2. 创建 KV 命名空间#

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

3. 绑定 KV#

在 Pages 项目 → Settings → Functions → KV namespace bindings:

变量名KV 命名空间
KV选择刚创建的命名空间

4. 配置环境变量#

在 Pages 项目 → Settings → Environment variables:

变量名必填说明
GITHUB_TOKENGitHub Personal Access Token(全局默认)
ADMIN_PASSWORD管理员密码
RSA_PUBLIC_KEYRSA 公钥(base64)
RSA_PRIVATE_KEYRSA 私钥(base64)

5. 生成 RSA 密钥对#

复制你部署的域名,这里以your-site.pages.dev举例

编辑地址栏,在后面输入/generate-keys.html,回车,点击按钮生成,复制输出的环境变量值。

完整地址:https://your-site.pages.dev/generate-keys.html

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

6. 首次使用#

  1. 访问部署的域名
  2. 输入管理员密码登录
  3. 进入设置 → 添加仓库,填写信息

注意: 请保证仓库中至少有一个文件(任意文件),否则无法上传图片

  1. 开始上传图片

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

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/
作者
StoneLeaves
发布于
2026-05-28
许可协议
CC BY-NC-SA 4.0
评论加载中...