【免费下载链接】bark-worker
Bark Server on Cloudflare Worker
Bark-Worker是一个部署在 Cloudflare Worker 上的 Bark 推送通知服务器,让你免费、快速拥有自己的 Bark 私有后端,向 iPhone 发送自定义通知。Bark 是一款允许向 iPhone 推送自定义通知的 iOS 应用,而 Bark-Worker 正是它的服务端实现:支持注册、推送、健康检查等完整 Bark-Server API,部署简单、成本几乎为零,特别适合隐私敏感的用户自托管推送通知服务。
为什么选择自建 Bark 推送服务器
使用 Bark 需要一台可用的服务器。传统方案要买一台云服务器,还要自己装 Bark-Server,麻烦且不便宜。而 Bark-Worker 直接把服务端跑在Cloudflare Worker上,借助 Cloudflare D1 数据库存储设备信息:
- 💰免费:Cloudflare 免费额度完全够用,个人使用零成本
- 🚀快速:全程在浏览器控制台操作,5 分钟完成部署
- 🔒隐私:设备密钥和推送内容只经过你的服务器,数据自己掌控
- 📱完整 API:支持
register、ping、healthz、info、push全部接口
准备工作:注册 Cloudflare 账号
首先访问 Cloudflare 官网,点击 Sign Up 注册一个账号(已有账号可直接登录)。
Cloudflare 注册账号页面:Bark 推送服务器部署前的准备
注意:如果默认的
workers.dev域名在你所在地区无法访问,后续需要绑定自己的域名。
第一步:创建并部署 Worker
登录后进入控制台,依次点击Workers & Pages→Overview→Create Worker。
Cloudflare 控制台创建 Bark Worker 的入口页面
为 Worker 取个名字(例如worker-crimson-bird-7aa3),点击右下角的Deploy按钮,一个带有默认 Hello World 脚本的 Worker 就部署成功了。
部署 Bark 推送服务器 Worker 并查看 workers.dev 域名
第二步:粘贴代码并开启设备注册
点击Edit Code进入代码编辑器,清空默认内容,把 main.js 的完整代码复制粘贴进去(如果你选择 KV 版本,则粘贴 main_kv.js 的代码)。官方更推荐 D1 版本,因为 D1 的免费额度更高。
在 Cloudflare 代码编辑器中粘贴 Bark-Worker 推送服务代码
如果是第一次部署(数据库里还没有任何设备),需要把代码顶部的isAllowNewDevice改为true,这样才能允许新设备注册:
Bark Worker 代码中将 isAllowNewDevice 设为 true 以允许新设备注册
修改完成后点击Save保存。
第三步:创建并绑定 D1 数据库
回到Workers & Pages页面,点击D1→Create database,输入数据库名称并点击Save。
在 Cloudflare D1 中为 Bark 推送服务器创建数据库
接下来把数据库绑定到刚才创建的 Worker 上:点击Workers & Pages→Overview→ 进入你的 Worker →Settings→Variables,在D1 Database Bindings区域点击Add Binding,选择刚创建的数据库,变量名必须填写database(名称填错 Worker 会直接报错),最后点击Save and deploy。
将 D1 数据库绑定名为 database 并部署到 Bark Worker
数据库表结构已预置在 migrations/ 目录中,D1 版本会自动创建
devices等表,无需手动建表。
第四步:验证部署是否成功
把代码中isAllowQueryNums也改为true并保存,然后在编辑器右侧的 HTTP 面板中,对你的 Worker 地址发起 GET 请求,路径填/info:
访问 /info 接口验证 Bark 推送服务器部署成功返回 devices: 0
只要返回内容中包含devices: 0,就说明Bark 推送服务器已经部署成功!🎉
在 Bark App 中添加服务器
打开 iPhone 上的 Bark 应用,点击添加服务器:
- 服务器地址填入你的 Worker 域名(如
https://your-worker.workers.dev) - 点击注册,App 会自动完成设备注册并生成 Device Key
- 保存好这个 Key,后续推送时就要用到它
注册成功后,你的 iPhone 就会收到一条来自自己推送服务器的测试通知,效果如下:
进阶技巧与常见问题
部署完成后,还可以参考这些进阶玩法,让你的推送服务器更强大:
- 设备 Key 别名:为一台设备配置多个易记的短 Key,方便写脚本推送,详见 doc/tips.zh.md
- Basic Auth 鉴权:在代码中设置
basicAuth = 'username:password',给 API 加一道安全锁 - 自定义根路径:修改
rootPath隐藏接口地址,配合 Cloudflare 路由增强防御 - MCP 实验功能:D1 版本支持 MCP 接口,可对接 AI 助手发送通知,详见 doc/mcp.zh.md
- Cron 定时任务示例:仓库的 examples/lunar_birthday_reminder/ 目录提供了一个农历生日提醒的小工具示例
如果你习惯命令行部署,也可以 clone 仓库后使用wrangler管理,配置参考 wrangler.jsonc,其中ALLOW_NEW_DEVICE、ROOT_PATH、BASIC_AUTH等变量都可以在这里统一维护。更详细的图文流程可以查阅 doc/setup_guide.zh.md。
总结
| 步骤 | 操作 | 耗时 |
|---|---|---|
| 1 | 注册 Cloudflare 账号 | 1 分钟 |
| 2 | 创建 Worker 并粘贴 main.js 代码 | 1 分钟 |
| 3 | 创建 D1 数据库并绑定为database | 1 分钟 |
| 4 | 访问/info验证、在 Bark App 注册设备 | 2 分钟 |
至此,一个完全属于你自己的 Bark 推送通知服务器就搭建完成了。以后无论是服务器告警、日程提醒,还是自己写的自动化脚本,都可以随时向 iPhone 推送一条漂亮的通知。祝使用愉快!📬
【免费下载链接】bark-worker
Bark Server on Cloudflare Worker
相关推荐
五分钟快速上手gorush:终极推送通知服务器配置指南
五分钟快速上手gorush:终极推送通知服务器配置指南 想要在五分钟内搭建一个功能强大的推送通知服务器吗?gorush是使用Go语言开发的轻量级推送通知微服务器
后端Chat-Buy-React入门教程:10步搭建React+Node全栈项目环境
Chat Buy React入门教程:10步搭建React+Node全栈项目环境 Chat Buy React是一个专为初学者设计的全栈项目,基于React、R
如何用 Docker Compose 快速部署 Boop:5 分钟搭好自托管推送通知服务器的完整指南
如何用 Docker Compose 快速部署 Boop:5 分钟搭好自托管推送通知服务器的完整指南 Boop 是一个小巧的 自托管推送通知服务器 :当你的应用
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考