博客 / 詳情

返回

安心存取,輕鬆分享!一款基於 CloudFlare 的開源文件託管工具!

大家好,我是 Java陳序員

做自媒體、寫博客、團隊協作,經常會遇到文件託管和圖牀問題 —— 要麼付費圖牀層層限速、到期失效,要麼自建存儲配置複雜、耗費精力,免費工具又大多功能殘缺、隱私無保障。

今天,給大家介紹一款開源的文件託管工具,基於 Cloudflare 生態打造!

關注微信公眾號:【Java陳序員】,獲取開源項目分享、AI副業分享、超200本經典計算機電子書籍等。

項目介紹

CloudFlare-ImgBed —— 一款開源的文件託管工具,支持 Docker 和無服務器部署,支持 Telegram、Discord、Cloudflare R2、S3、Huggingface 等多種存儲渠道,支持 WebDAV 協議和多種 RESTful API.

功能特色

  • 快速上手:輕鬆部署,支持 Cloudflare Pages 免費託管和 Docker 部署,滿足不同需求
  • 多樣上傳:支持拖拽、點擊、粘貼、URL 等多種上傳方式,支持批量上傳和目錄管理
  • 多種渠道:支持 Telegram Bot、Cloudflare R2、S3 API 等多種存儲方式,滿足不同需求
  • 安全可靠:支持身份認證、IP 白名單、圖片審查、防濫用等多重安全保障
  • 炫酷界面:流暢絲滑的過渡動畫、呼吸燈效果、靈動的操作體驗,支持深色模式
  • 個性定製:支持自定義背景、Logo、配色、鏈接前綴等,打造專屬圖牀

快速上手

CloudFlare-ImgBed 支持 Cloudflare Pages 部署、Docker 部署、手動部署多種方式,可根據場景自定義部署。

  • Cloudflare Pages 是推薦的部署方式,具備免費託管、全球 CDN 加速和無需服務器維護的優勢。部署方式可參考官方文檔:
https://cfbed.sanyue.de/deployment/cloudflare.html
  • Docker 部署適合有自己服務器的用户,提供更多的控制權和自定義能力。

Docker 命令部署

1、創建項目目錄

mkdir -p /data/software/cloudflare-imgbed/data
cd /data/software/cloudflare-imgbed

2、創建配置文件 wrangler.toml:

name = "cloudflare-imgbed"
compatibility_date = "2024-07-24"

# 可選:添加環境變量,v2.0 版本後大部分配置已遷移到管理後台
# [vars]

3、拉取鏡像

docker pull marseventh/cloudflare-imgbed:latest

4、運行容器

docker run -d \
  --name cloudflare-imgbed \
  -p 7658:8080 \
  -v /data/software/cloudflare-imgbed/data:/app/data \
  -v /data/software/cloudflare-imgbed/wrangler.toml:/app/wrangler.toml \
  marseventh/cloudflare-imgbed:latest

5、啓動成功後,瀏覽器訪問

http://{IP/域名:7658}

Docker Compose 部署

1、創建項目目錄

mkdir -p /data/software/cloudflare-imgbed/data
cd /data/software/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 文件,可以手動創建 docker-compose.yml 並填寫如下內容:

version: '3.8'

services:
  imgbed:
    image: marseventh/cloudflare-imgbed:latest
    ports:
      - "7658:8080"
    volumes:
      - ./wrangler.toml:/app/wrangler.toml
      - ./data:/app/data
    restart: unless-stopped

4、創建配置文件 wrangler.toml:

name = "cloudflare-imgbed"
compatibility_date = "2024-07-24"

# 可選:添加環境變量,v2.0 版本後大部分配置已遷移到管理後台
# [vars]

5、啓動服務

# 啓動服務(後台運行)
docker compose up -d

# 查看日誌
docker compose logs -f

6、啓動成功後,瀏覽器訪問

http://{IP/域名}:7658

設置訪問密碼

CloudFlare-ImgBed 默認不需要密碼即可上傳文件和進入管理後台,建議安裝成功後首先進行設置。

1、進入系統管理、系統設置、安全設置菜單

http://{IP/域名}:7658/systemConfig#security

2、輸入密碼並進行保存

功能體驗

文件上傳

  • 文件上傳

  • 歷史記錄

系統管理

  • 文件管理

  • 系統狀態

  • 上傳設置

  • 網頁設置

  • 其他設置

本地開發

CloudFlare-ImgBed 依賴 Node.js 環境,需提前安裝 Node.js.

1、克隆或下載項目源碼

git clone https://github.com/MarSeventh/CloudFlare-ImgBed.git

2、切換到項目根目錄,安裝依賴

cd CloudFlare-ImgBed
npm install

3、在項目根目錄下新建 wrangler.toml 配置文件

name = "cloudflare-imgbed"
compatibility_date = "2024-07-24"

# 如果需要設置環境變量,可以在這裏添加
# [vars]
# AUTH_CODE = "your_auth_code"
# TG_BOT_TOKEN = "your_bot_token"
# TG_CHAT_ID = "your_chat_id"

4、運行服務

npm run start

5、啓動成功後,瀏覽器訪問

http://localhost:8080

可以説,CloudFlare-ImgBed 是一款兼顧易用性和擴展性的開源文件託管系統,尤其適合需要基於 Cloudflare 生態快速搭建圖牀/文件託管服務的場景,同時支持多存儲渠道和完善的管理能力。無論是個人使用還是小型團隊協作,都能滿足文件託管的需求。

項目地址:https://github.com/MarSeventh/CloudFlare-ImgBed

最後

推薦的開源項目已經收錄到 GitHub 項目,歡迎 Star

https://github.com/chenyl8848/great-open-source-project

或者訪問網站,進行在線瀏覽:

https://chencoding.top:8090/#/

我創建了一個開源項目交流羣,方便大家在羣裏交流、討論開源項目

但是任何人在羣裏打任何廣告,都會被 T 掉

如果你對這個交流羣感興趣或者在使用開源項目中遇到問題,可以通過如下方式進羣

關注微信公眾號:【Java陳序員】,回覆【開源項目交流羣】進羣,或者通過公眾號下方的菜單添加個人微信,並備註【開源項目交流羣】,通過後拉你進羣

大家的點贊、收藏和評論都是對作者的支持,如文章對你有幫助還請點贊轉發支持下,謝謝!


user avatar
0 位用戶收藏了這個故事!

發佈 評論

Some HTML is okay.