今天要分享一个超级实用的黑科技教程——如何利用 HuggingFace 免费搭建一个 100G 的图床和网盘,而且全程无需实名认证,操作简单,小白也能轻松上手!
这个项目其实是一个开源的“宝藏”,名字叫 CloudFlare-ImgBed,是一个基于 Cloudflare Pages 打造的文件托管平台。它不仅完全免费,还非常稳定高效,目前在 GitHub 上已经收获了超过 4k 的 star,热度非常高!项目的作者是 MarSeventh 大佬,不得不说,这个设计真的很良心。
它支持多种存储方式,配置灵活,可以满足不同场景下的需求。无论是做图床、分享文件,还是搭建个人小网盘,都非常方便。话不多说,咱们直接进入正题,开搞!
cfbed前台界面
后台界面
采用了前后端分离的架构:
简单来说,就是通过 Cloudflare 的强大边缘网络,把 HuggingFace 的 100G 免费存储空间利用起来,变成一个私人的图床或网盘。
作者提供了两种部署方式:一种是 Cloudflare Pages 托管(推荐,免费),另一种是 Docker 部署(适合有服务器的朋友)。
首先 fork 源码仓库到自己的 GitHub 。如果有更新就可以直接将更新的立马部署到 Cloudflare Pages 上。
1、在控制面板找到【计算和AI】然后点击【Worker and Pages】在页面的右上角点击【创建应用程序】,然后点击下面的想要部署 Pages?的【开始按钮】。如下图
2、在 “导入现有 Git 存储库” 处点击 “开始使用”
3、选择【CloudFlare-ImgBed】项目,然后点击【开始设置】按钮
4、项目名称自定义,然后构建命令填入: npm install ,其他默认,点击【保存并部署】
5、配置数据库
数据库用于存储文件元数据,是必需的组件,可选数据库为
KV数据库和D1数据库。两者对比如下表所示,根据自己使用场景从其中选择一种配置即可。重要提示:KV 数据库和 D1 数据库只需要配置其中一个即可,不需要同时配置两个!建议根据下表选择适合自己的数据库类型。
| 特点 | KV 数据库 | D1 数据库 |
|---|---|---|
| 读写性能 | 高 | 较低 |
| 免费额度 | 少 | 多 |
在【存储和数据库】->【workers KV】添加KV数据库,KV名称填写 img_url
如果要使用D1数据库,就在【存储和数据库】->【D1 SQL数据库】,点击右上角的【创建数据库实例】,这里就不做详细说明了。
6、将数据库绑定到项目上。
在Workers and Pages中点击刚刚部署好的项目,在面板中找到【设置】选项,点击绑定按钮,添加绑定KV数据库的信息如下。点击保存以后,项目会重新部署。
img_urlimg_url
7、重新部署以后,就可以使用CloudFlare分配的域名访问了,当然建议绑定自己的域名
这里可以用到之前游魂分享的免费域名:域名白嫖指南:如何零成本拿下有效期近千年的“传家宝”域名?
1、创建项目目录
mkdir cloudflare-imgbed
cd cloudflare-imgbed
2、下载 Docker Compose 文件
# 下载 docker-compose.yml
wget https://raw.githubusercontent.com/MarSeventh/CloudFlare-ImgBed/main/docker-compose.yml
# 或者手动创建
curl -o docker-compose.yml https://raw.githubusercontent.com/MarSeventh/CloudFlare-ImgBed/main/docker-compose.yml
3、启动服务
# 启动服务(后台运行)
docker compose up -d
# 查看日志
docker compose logs -f
4、访问服务
打开浏览器访问:http://your-server-ip:7658 记得防火墙打开对应端口
1、创建项目目录
mkdir cloudflare-imgbed
cd cloudflare-imgbed
2、拉取镜像
docker pull marseventh/cloudflare-imgbed:latest
3、运行容器
docker run -d \
--name cloudflare-imgbed \
-p 7658:8080 \
-v $(pwd)/data:/app/data \
marseventh/cloudflare-imgbed:latest
4、访问服务
打开浏览器访问:http://your-server-ip:7658 记得防火墙打开对应端口
HuggingFace 渠道支持大文件直传,适合上传超过 20MB 的文件。对于大文件,系统会自动使用 LFS 协议进行分片上传。
1、注册登陆后,在控制面板新建一个新空间,空间名字自定义。
Select the Space SDK 选择 docker 的空项目或者是其他
Space hardware选择FREE版本不要钱的。空间的可见性也是根据你自己的意向选择就好了
然后点击下面的【Create Space 】按钮
2、创建 HuggingFace Access Token,在【Setting】中的【Access Tokens】中点击【Create New Token】就行了,token的名称自定义,然后勾选仓库的读写权限,如下。
1、进入CloudFlare-ImgBed系统后台,在系统设置中,点击【系统设置】->在【上传设置】中添加上传渠道。如下
2、添加一个HF存储的渠道方式,渠道名称自定义,然后仓库名称一定是 用户名/仓库名 的格式,然后填入上面申请的Acess Token信息。点击保存就行了。
3、在系统设置中,点击【系统设置】->【页面设置】中去配置默认上传渠道信息和其他的配置就行了,如下。
你也可以增加其他的上传渠道,还可以开启负载均衡!
这个方案是不是超级香?不需要实名认证,访问速度还杠杠的,最关键的是——完全免费!100G 的 HuggingFace 空间,加上 Cloudflare 的全球加速,无论是放博客图片、分享文件,还是当个人网盘,都绰绰有余。
而且全程无需自己买服务器、不用装任何客户端,只要有个 GitHub 账号和 Cloudflare 账号就能搞定。还要什么自行车?赶紧去搭建一个吧!
!评论内容需包含中文