今日複今日,今日何其少。
今日又不爲,此事何時了。

CloudFlare Workers搭配HuggingFace部署專屬圖床服務

3942.png

CloudFlare ImgBed是一個基於CloudFlare的開源文件託管解決方案,為用戶提供免費、穩定、高效的文件存儲服務。項目支持多種存儲渠道,支持無服務器和有服務器部署方式,滿足不同用戶的需求。

🌟核心優勢
多存儲渠道:支持Telegram、R2、S3、HuggingFace等。
免費100GB:使用HuggingFace空間作為存儲,無容量費用。
省心部署:無需服務器/客戶端,訪問速度穩定。
大文件友好:超20MB自動使用LFS分片上傳。

🏗️技術架構
前端界面:基於Vue.js開發,支持響應式設計,支持中英文雙語切換。
後端API:基於CloudFlare Workers構建的無服務器架構。
存儲層:支持多種存儲後端(Telegram、R2、S3、Discord、HuggingFace、WebDAV)。
數據庫:支持CloudFlare KV和D1數據庫。
部署方式:支持CloudFlare Pages、CloudFlare Workers、Docker多種部署方式。

🚀核心功能
多格式支持:支持絕大多數常見圖像、視頻、動圖等格式。
多種上傳方式
● 拖拽上傳
● 點擊選擇上傳
● 粘貼上傳(支持文件和URL)。
● 批量上傳(不限制文件總數)。
實時進度顯示:上傳過程中顯示實時進度。
自動壓縮:超大圖像自動壓縮,提升上傳穩定性。
WebP轉換:支持上傳前將圖像轉換為WebP格式,有效減小文件體積。

3943.png

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

🔗訪問Fork項目
登陸GitHub,訪問CloudFlare-ImgBed項目,點擊右上角「Fork」,再點擊「Create Fork」創建分支。

🔑獲取API Token和Account ID
登陸CloudFlare,點擊右上角「👤」頭像 ➠「配置文件」➠「API令牌」➠「+創建令牌」,選擇 “編輯CloudFlare Workers” 模板,點擊「使用模板」,選擇「帳戶資源」➠ 選擇「區域資源」,確認權限並點擊「繼續以顯示摘要」➠「創建令牌」,複製記錄生成的API令牌。返回點擊「Workers和Pages」,在右側欄找到「Account ID」複製並記錄。

🗄️创建数据库:数据库用于存储文件元数据。
选择「存储和数据库」➠「Workers KV」➠「+Create Instance」創建實例,「命名空间名称」填:img_url,點擊「創建」,複製記錄命名空间ID。

🔐配置GitHub Secrets
在Fork倉庫中,點擊「⚙️Settings」➠「Secrets and variables」➠「Actions」➠「Secrets」,在「Repository secrets」處點擊「New repository secret」添加新倉庫密鑰:
Name *名稱:CLOUDFLARE_API_TOKEN
Secret *機密:CloudFlare API Token
點擊「Add secret」添加機密。
Name *名稱:CLOUDFLARE_ACCOUNT_ID
Secret *機密:CloudFlare Account ID
點擊「Add secret」添加機密。
Name *名稱:KV_NAMESPACE_ID
Secret *機密:KV命名空間ID
點擊「Add secret」添加機密。

🚀運行部署:手動部署
點擊Fork倉庫「⏵Actions」➠ 左側選擇「Deploy to CloudFlare Workers」➠ 點擊「Run workflow▾」,選擇要部署的分支(默認main),可選修改Worker名稱(默認使用Secrets中的WORKER_NAME,未配置則為CloudFlare-ImgBed),最後點擊「Run workflow」開始部署。

🔄自動部署
配置好Secrets後,每次main分支有push(包括通過Sync fork同步上游更新)時,會自動觸發部署。
配合自動同步:倉庫內置了Upstream Sync Action(每日自動同步上游更新)。啟用後,上游有新版本時會自動同步到您的main分支,隨後自動觸發Worker部署,實現全自動更新。
啟用方式:點擊Fork倉庫「⏵Actions」➠「Upstream Sync」➠ 點擊「Enable workflow」啟用。

登陸CloudFlare,點擊「計算 (Workers) 」➠「Workers和Pages」➠「創建應用程序」➠「想要部署 Pages?開始使用」,選擇「導入現有Git存儲庫」,點擊「開始使用」➠「GitHub」➠ 選擇「GitHub帳戶」,搜索「CloudFlare-ImgBed」,選擇「CloudFlare-ImgBed」➠ 點擊「開始設置」,構建命令填:npm install,點擊「保存並部署」,構建完成後點擊「繼續處理項目」,CloudFlare-ImgBed項目部署成功。點擊CloudFlare分配的默認域訪問圖床。返回到部署好的項目 ➠「設置」➠「綁定」➠「+添加」。

變量名稱:img_url
KV命名空間:img_url

點擊「保存」後項目會自動重新部署,部署完成後可通過CloudFlare分配的xxx.pages.dev域名訪問(強烈建議自定義綁定域名)。

📦存儲配置:HuggingFace
登陸:https://www.huggingface.co,點擊右上角頭像選擇「New Space」新建空間。

space name(空間名稱):自定義
Short description(簡短描述):隨意
Select the Space SDK:任意選擇(推薦選擇Docker)
Space hardware Free:CPU Basic

點擊「Create Space」創建空間。

🔑獲取Access Token
點擊右上角頭像選擇「Settings」設置,左側選擇「Access Tokens」➠ 點擊「+Create New Token」,「Token name」令牌名稱自定義,勾選「Write access to contents/settings of all repos under your personal namespace」倉庫讀寫權限,點擊「Create token」創建令牌並複製記錄。

🖼️配置圖床後台
訪問圖床後台:在部署好的域名後加/dashboard(例如:https://您的域名/dashboard)進入「系統設置」➠「上傳設置」➠「添加渠道」,將默認上傳渠道設為剛添加的HF渠道:
*渠道類型:HuggingFace
*渠道名稱:HuggingFace
*倉庫名:填HuggingFace用戶名/空間名(可從空間頁面地址欄獲取)
*Access Token:填剛創建的令牌

點擊「確認添加」。再點擊「頁面設置」➠「客戶端設置」:
默認渠道類型:選擇HuggingFace
默認渠道名稱:選擇HuggingFace
默認上傳目錄:/img

點擊「保存」。

🌱環境變量(按需配置可選):在項目「設置」➠「環境變量」中可添加以下配置(非必填):
BASIC_USER/BASIC_PASS:後台登錄賬號、密碼
AUTH_CODE:訪問驗證碼
Disable_Telemetry:設為true可關閉遙測
AllowRandom:設為true可開啟隨機圖API(網址後綴加/random)

赞(0)
未經允許不得轉載:365t在線 » CloudFlare Workers搭配HuggingFace部署專屬圖床服務

評論 搶沙發

  • 暱稱 (必填)
  • 郵箱 (必填)
  • 網址