# 本地部署 Ntfy 服务，实现一套类 Webhook 推送服务

> 本文开放前 70% 正文，剩余内容会员可见。

原文：https://utgd.net/article/21035

我们知道钉钉、飞书、企业微信这些办公聊天软件都有一个 Webhook 机器人的功能。可以通过特定的格式往群内推送消息，起到告警、提醒作用。

但如果我们只需要一个“及时告警”的功能，而不需要整套聊天工具，有什么好方案吗？

本文要介绍的 Ntfy 就是这样一个开源的超轻量通知推送工具，可以通过简单的 HTTP API，把消息推送到你的手机、电脑，甚至是其他服务。你可以用它来：

- 监控服务器运行状态，异常时立即通知你。

- 在脚本跑完任务后提醒你。

- 自动化工作流的状态更新。

- 通过 Webhook 实现事件触发的消息推送。

总之，只要是需要“发个消息通知一下”的场景，Ntfy 都能轻松胜任。

🏠 ntfy\.sh 官网

## 快速上手官方 Ntfy 服务（App 配置）

如果你只是想快速体验一下 Ntfy ，可以先直接用官方的 Ntfy 服务：

- 安装 Ntfy App：在手机或电脑上下载 Ntfy App。

🔗 ntfy \- App Store

🔗 ntfy \- Google Play

官网还有其他下载方式，比如通过 F\-Droid 下载 Android 版本。

- 订阅一个主题：在 App 里输入一个自定义的主题名称，比如 mytopic。

- 发送测试消息：最简单的方法是在电脑的终端里输入：

```
curl -d "Backup successful 😀" ntfy.sh/mytopic
```

- 接收通知：打开 App，你会看到一条来自 Ntfy 的消息。

这种方式简单方便，如果用量少，直接使用免费的官方服务（免费版支持每天 250 条消息）即可。

但如果你对数据隐私比较在意，或者希望更多自定义功能，那自建一个 Ntfy 服务会更合适。

## 自建 Ntfy 服务

要在自己的服务器上部署 Ntfy 服务，只需要几步：

- 通过 Docker 容器部署

这里的 40265 是演示，你可以换成任意端口，映射到容器内的 80 端口上。

bash docker run \-p 40265\:80 \-it binwiederhier/ntfy serve

- 开放防火墙端口：确保 40265 端口可以正常访问。

- 访问 Ntfy 服务：浏览器里打开 http\://your\-server\-ip\:40265，如果看到欢迎页面，那就成功了！

如果嫌麻烦，1Panel 也提供直接更直接的部署方式。

如果你想持久化保存历史记录，可以参考官网提供的 Docker 示例对命令进行改写。但日常使用只需要最简化的版本即可。

在进入网页后，这就是你自己部署的 Ntfy 服务了，新增一个自定义的主题名称，比如 mytopic。

然后就可以把命令改写为这样——

```
curl -d "Backup successful 😀" your-server-ip:40265/mytopic
```

即可在网页端接收到消息推送了。

更多的设

---

[前往标准阅读页](https://utgd.net/article/21035?audience=web)
