消息推送软件Bark服务端部署指南
Bark Server 部署与使用指南(优化版)
一、iOS 推送简介
苹果的推送服务(APNs)是目前业内最稳定的推送机制之一。其基本流程如下:
发送端 → Apple Push Notification Service(APNs) → 用户设备
特点:
- 不依赖 App 常驻后台
- 只要设备联网即可接收通知
- 推送由系统统一调度,省电高效
二、什么是 Bark
Bark 是一个极简的 iOS 推送工具,它的核心优势是:
只需要访问一个 URL,就能向 iPhone 发送通知
例如:
https://api.day.app/{key}/Hello
三、为什么要自建 Bark Server
官方服务是公共的,如果你:
- 推送内容涉及隐私
- 想完全掌控数据
- 想提高稳定性
可以自建服务,数据流变为:
发送端 → 自建 Bark Server → APNs → iPhone
优点:
- 数据只存在于你的服务器 + 设备/iCloud
- 可控性更强
- 可自定义部署环境
四、部署方式
方法一:Docker(推荐)
docker run -d \
--name bark \
--restart=always \
-p 8234:8080 \
-v $(pwd)/bark-data:/data \
finab/bark-server
说明:
- 默认容器端口:
8080 - 对外端口:
8234(可自行修改) - 数据目录:
./bark-data
方法二:Docker Compose
mkdir bark-server && cd bark-server
curl -L https://git.io/JvSRl -o docker-compose.yaml
docker compose up -d
⚠️ 注意:新版 Docker 使用
docker compose(不是docker-compose)
方法三:手动部署
1. 下载程序
前往 GitHub Releases:
https://github.com/Finb/bark-server/releases
下载对应系统版本(如 Linux AMD64)
2. 赋予执行权限
chmod +x bark-server_linux_amd64
3. 启动服务
./bark-server_linux_amd64 \
-addr 0.0.0.0:8080 \
-data ./bark-data
4. 测试服务
curl http://127.0.0.1:8080/ping
返回:
{"code":200,"message":"pong"}
说明部署成功。
五、HTTPS(强烈建议)
建议使用反向代理(如 Nginx / Caddy):
https://your-domain.com → http://127.0.0.1:8080
原因:
- iOS 更信任 HTTPS
- 避免明文传输
- 可直接使用标准 443 端口
六、添加服务器(iOS)
在 Bark App 中:
- 点击右上角「+」
- 选择「添加私有服务器」
- 填写地址,例如:
https://your-domain.com
或:
http://your-ip:8234
- 保存后自动生成 Key
七、推送示例
假设你的 key 为:
abc123
1. 最简单推送
https://your-domain.com/abc123/Hello
2. 带标题
/abc123/标题/内容
3. 打开 URL
/abc123/Apple?url=https://www.apple.com
4. 自动复制到剪贴板
/abc123/内容?automaticallyCopy=1©=文本
5. 保存推送历史
/abc123/内容?isArchive=1
6. 指定铃声
/abc123/内容?sound=guitar
7. 消息分组
/abc123/内容?group=Group01
八、典型应用场景
Bark 最大优势:无需开发 iOS App
示例 1:物联网报警
- 人体传感器检测异常
- 设备调用 Bark API
- 手机立即收到通知
👉 相当于“自建安防推送系统”
示例 2:电脑 → 手机剪贴板
配合 Windows 工具(如 Quicker):
- 复制文本
- 按快捷键
- 自动推送到手机
- 手机自动复制
👉 实现跨设备剪贴板
九、常见坑(帮你提前踩了)
- ❌
docker-composeup→ 应为docker compose up - ❌
curl-sL→ 应为curl -L - ❌
0.0.0.0测试地址 → 实际访问请用127.0.0.1或公网 IP - ⚠️ iOS 端强烈建议用 HTTPS,否则可能推送不稳定
- ⚠️ 云服务器记得开放端口(如 8234 / 443)
十、总结
一句话总结 Bark:
最简单的跨设备推送方案,没有之一。
适合:
- 自动化通知
- 运维报警
- 个人效率工具
- IoT 场景