你有没有遇到过这些情况:服务器半夜挂了,但日志报警邮件躺在垃圾箱里,根本没看到;CI/CD 跑完了,想第一时间知道成功还是失败;家里的服务器下好了电影,想远程通知一下,结果要配一堆推送服务。
我自己被这些问题折磨了很久。试过很多方案:邮件太慢、钉钉/企微配置太烦、Server 酱免费版限速、Pushover 要付费……直到我遇到了 ntfy。
ntfy 是什么
ntfy(读作 "notify")是一个开源的免费推送通知服务,核心功能就一个:通过 HTTP PUT/POST 请求,向你的手机或桌面发送推送通知。不需要账号、不需要配置服务器、不需要调 SDK。用一条 curl 命令就能搞定:
curl -H "prio:high" -H "tags:warning" -H "Title:服务器告警" \
-d "内存使用率超过 90%" ntfy.sh/topics/你的专属频道
手机装上 ntfy App(iOS/Android 都支持),订阅你的专属频道,以后往这个地址发什么,手机就收到什么通知。就这么简单。
能做什么
1. 服务器监控报警
写个定时 cron,每 5 分钟检查一次重要指标,有问题直接推:
#!/bin/bash
MEM=$(free | grep Mem | awk '{printf("%.0f", $3/$7 * 100)}')
if [ "$MEM" -gt 90 ]; then
curl -H "tags:warning" -H "Title:服务器内存告警" \
-d "内存使用率 ${MEM}%" ntfy.sh/myserver-alerts
fi
2. CI/CD 完成通知
GitHub Actions、GitLab CI、Jenkins 都可以:
curl -H "tags:white_check_mark" -H "Title:GitHub Actions 失败" \
-d "仓库 your-repo 构建失败" \
ntfy.sh/myci-notify
3. 长时脚本通知
跑机器学习训练、数据处理这种几个小时的事:
python train.py && \
curl -H "tags:party" -H "Title:训练完成" \
-d "模型训练完成,耗时 3 小时 22 分" \
ntfy.sh/aiscripts
4. NAS / 家庭服务器下载完成
curl -H "tags:tada" -H "Title:下载完成" \
-d "《奥本海默》已下载完成,大小 2.4GB" \
ntfy.sh/nas-downloads
为什么值得推荐
1. 开源免费,没有限制
官方提供公共服务器 ntfy.sh,直接用,不用注册账号。也可以自己部署,完全掌控数据。
2. 零门槛集成
现有脚本加一行 curl 就能接入,不用改架构、不用装 SDK。Cron 里加一行就行,改造成本几乎为零。
3. 支持标签和优先级
-H "tags:warning" 可以带上图标和颜色,-H "prio:high" 可以设定高优先级,iOS 会有声音提醒。
4. 自建简单
一条 Docker 命令就起好了。
5. 支持 WebSocket,延迟很低
ntfy 支持 WebSocket 连接,延迟毫秒级,推送几乎是实时的。
快速上手(5 分钟搞定)
第一步:装 App
iOS 和 Android 都有,搜 "ntfy" 就能找到。
第二步:发一条测试通知
curl -H "Title:Hello from ntfy" -d "这是一条测试通知,成功!" ntfy.sh/test-xiaoyue
第三步:App 里订阅同一个频道
打开 App → 点击右上角 "+" → 输入 test-xiaoyue → 订阅。以后发到这个频道的通知就会出现在手机上。搞定。
进阶:私有部署
docker run -d \
--name ntfy \
-p 80:80 \
-v /mnt/docker/ntfy:/data \
-e NTFY_AUTH_METHOD=none \
-e NTFY_BASIC_AUTH_USERNAME=admin \
-e NTFY_BASIC_AUTH_PASSWORD=你的密码 \
binwiederhier/ntfy:latest \
serve --listen-http=":80"
适合谁
- 有服务器的人(VPS、小主机、NAS)——监控报警必备
- 跑 CI/CD 的开发者——构建通知,不需要装 IM SDK
- 经常跑长时脚本的人——训练/下载/数据处理,跑完自动推送
- 喜欢折腾效率工具的极客——一条 curl 就能发通知
链接
- GitHub:https://github.com/binwiederhier/ntfy
- 官方文档:https://ntfy.org
- 公共服务器:https://ntfy.sh
用了两个月下来,ntfy 是那种"装了就不想删"的小工具。不占用系统资源、不需要维护、集成成本几乎为零。如果你也想让重要的事情第一时间通知到你,ntfy 值得试试。
默认评论
Halo系统提供的评论