一、图床的核心价值与技术选型
图床的核心目标是为图片提供稳定、高速且保真的在线访问链接,摆脱对第三方平台的依赖与画质压缩。本方案的技术栈组合(GitHub + Cloudflare Pages + KV)完美解决了免费、性能和可控性三大痛点。
二、基础设施准备:注册与Fork
首先,你需要两个核心服务的账号:
- GitHub:用于托管项目源代码。
- Cloudflare:提供免费的Pages静态托管服务与全球CDN。
账号准备完毕后,直接Fork Telegraph-Image项目仓库:https://github.com/cf-pages/Telegraph-Image。这是后续一切部署的基础。
三、核心部署流程
登录Cloudflare Dash,进入“Pages”服务。点击“创建项目”,选择“连接GitHub账户”并授权。选择你Fork的Telegraph-Image仓库,在配置页面中,项目名称可自定义,构建命令等通常无需修改,直接点击“部署站点”。数分钟后,一个基础的图床服务便部署完成,并会获得一个*.pages.dev的免费二级域名。
此时,基础的上传与访问功能已经可用。
四、进阶功能:启用文件管理后台
基础部署仅提供上传接口,要管理已上传的文件,需启用管理后台。这依赖Cloudflare的KV存储功能。
- 创建KV命名空间:在Cloudflare控制台,找到“Workers & Pages”下的“KV”,创建一个新的命名空间(例如:IMG_STORAGE)。
- 绑定KV到Pages项目:进入你的Pages项目,导航至“设置”->“函数”->“KV命名空间绑定”。点击“编辑绑定”,在“变量名称”中填入
img_url,在“KV命名空间”中选择你刚创建的命名空间。 - 配置管理账号密码:在项目的“设置”->“环境变量”中,添加两个变量:
USERNAME: 你的管理后台用户名PASSWORD: 你的管理后台密码
- 重新部署:完成上述配置后,返回项目概览页,触发一次“重新部署”。
部署完成后,访问 https://你的域名/admin 即可登录管理后台,进行文件的查看与删除操作。
五、架构分析与注意事项
此方案的本质是将图片以二进制形式存储于Cloudflare的全球边缘网络。其优势在于:
- 完全免费:Cloudflare Pages免费额度对于个人图床完全足够。
- 画质无损:服务端不对图片进行任何转码处理。
- 访问极快:得益于Cloudflare的全球Anycast网络。
需要注意的要点:
- Cloudflare KV的免费额度有每日操作次数限制,但对于低频管理操作完全够用。
- 务必设置强密码,因为管理后台直接暴露在公网。
- 此方案更适合存储低频访问的私有图片或作为博客图床。若用于高并发公开图床,需关注Cloudflare Pages的请求次数限制。
通过以上步骤,你已掌握了一套企业级可用的免费图床搭建方案。其技术栈组合展现了现代Serverless架构的威力,将运维成本降至零,同时提供了优秀的性能与可靠性。