基於Vue3和Cloudflare Workers的WebMail(收件箱系統)解決方案可以自託管郵箱功能,而無需構建自建伺服器。
主要功能包括:發送附加電子郵件、接收電子郵件、郵箱管理、R2存儲、D1資料庫、KV緩存、轉門驗證、群發送、TG推送等。
快速入門指南
1.克隆倉庫安裝依賴關係
git克隆https://github.com/LaziestRen/cloud-mail.git
CD雲郵件/郵件工作者
npm install
2.配置Cloudflare環境
- wrangler.toml 填寫:
- GV、D1、R2的綁定名稱和ID(創建相關資源後複製填寫)。
域(Your電子郵件域如下example.com)、jWT_secret(自定義密鑰)、管理員郵箱等變量。
- 部署過程依賴於Cloudflare Workers、KV、D1和R2:
- 在Cloudflare控制台中創建這些資源;
- 填寫
wrangler.toml; - 執行
NPM運行部署。
3. DNS和郵件路由設置
- 域名解析指向Cloudflare Workers。
- 在Cloudflare控制台中設置電子郵件路由以將所有消息(Catch-all)轉發到
/apiWorker.
4.初始化資料庫
部署完成後,訪問以下URL以初始化D1和KV:
https:您的域名/api/init/your_jWT_secret>
5.配置重新發送電子郵件轉發服務
- 註冊重新發送、添加域名並驗證;
- 獲取API Token並配置到郵箱系統後台;
- 將Webhook地址設置為
https://您的域名/api/webhooks,並檢查相關電子郵件事件。
6.本地開發環境
您可以在本地模擬實際部署:
npm run dev
#然後訪問http://127.0.0.1:8787/api/init/your_secret初始化
#在配置中,可以使用本地地址上傳附件(例如http://127.0.0.1:8787/api/file)
項目結構技術棧
- 前端(mail-vue):Vue3 + Element Plus
- 後台(郵遞員):Hono、Drizzle ORM、Cloudflare Workers
- 存儲等:Cloudflare KV、R2、D1;電子郵件發送:重新發送;附件接收和接收:R2;人機驗證:旋轉門
操作步驟總結(流程圖)
| 步驟 | 描述 |
|---|---|
| 克隆倉庫 | 下載代碼並安裝依賴項 |
| 資源配置 | 設置Cloudflare資源並填寫 wrangler.toml |
| 部署工人 | NPM運行部署 將後台部署到Cloudflare |
| 設置DNS解析和郵件路由 | 使域名能夠接收電子郵件並將其轉發給員工 |
| 初始化資料庫 | 通過 /api/init/. 初始化後台存儲 |
| 配置郵件服務 | Resend和Webhook完成集成 |
| 登錄Web界面 | 使用管理員郵箱登錄管理後台 |
收件箱提示
- 部署之前,確保DNS已解析並打開Cloudflare管理(Workers路由已生效)。
- 重新發送註冊和域名驗證可能需要一段時間。
- Cloudflare免費計劃對Workers、D1、R2等有使用限制,適合個人或小規模使用。
- 如果您想本地調試,請記住本地訪問
/api/init/.初始化。
Github:https://github.com/eoao/cloud-mail
輸油管: