自建开源消息推送服务:使用 ntfy 搭建个人通知中心

最近在使用 qbittorrent 监控 rss 追番,想要使用消息推送提醒我更新了,首先想到用 Server 酱来推送消息,但是免费账户限制太死了,所以生出了自部署推送服务的想法。

于是在服务器上使用 Docker 部署了 ntfy ,使用体验不错,记录一下部署过程。

docker-compose.yml

version: '3'

networks:
  app-network:
    name: ntfy-network

services:
  ntfy:
    image: binwiederhier/ntfy:latest
    container_name: ntfy
    command: serve
    restart: always
    environment:
      - TZ=Asia/Shanghai
    ports:
      - 127.0.0.1:40265:80
    volumes:
      - ./data/cache/ntfy:/var/cache/ntfy
      - ./data/lib/ntfy:/var/lib/ntfy
      - ./data/ntfy:/etc/ntfy
    user: "0:0"
    networks:
      - app-network
    healthcheck:
      test: ["CMD-SHELL", "wget -q --tries=1 http://localhost:80/v1/health -O - | grep -q 'healthy.*true' || exit 1"]
      interval: 60s
      timeout: 10s
      retries: 3
      start_period: 40s

注意:如果你使用以上配置进行部署需要自行配置反向代理,或者修改 ports 配置为 40265:80

配置文件(位于 ./data/ntfy/server.yml

这个配置服务我只用来推送一些非敏感信息,所以没有加鉴权相关配置,web-push 相关配置用于启用 PWA 实现桌面端推送

# 基础设置
base-url: 

web-push-public-key: 
web-push-private-key: 
web-push-file: /var/cache/ntfy/webpush.db
web-push-email-address:

# 消息缓存
cache-file: "/var/cache/ntfy/cache.db"
cache-duration: "96h"

配置中留空部分需要填写,参考官方文档

配置完成后仅用一条 curl 命令即可推送/接受消息,用起来很方便,官方提供全平台客户端

20 个赞

感觉比bark 好点啊,还有安卓端

1 个赞

感谢大佬!

1 个赞

没有记错的话 之前玩的时候 安卓保活好像是个问题

1 个赞

不知道现在咋样,我一般都是直接走QQ邮箱通知哈哈 :tieba_025:

1 个赞

优秀佬友

1 个赞

yes yes 邮箱是一个很不错的通知渠道

1 个赞

这个和gotify哪个好

1 个赞

学习一下~

4 个赞

好高级的样子

1 个赞

rss追番是什么操作,现在官方还会放出rss源吗

我一直用 Bark,官方 API 基本够用吧

帮顶大佬

6哇学习一下

是字幕组的 rss 更新订阅w
蜜柑计划 - Mikan Project

1 个赞

:grinning_face: :saluting_face: 我不得不推荐一下我自己的消息平台了,notifyx码达消息推送平台。和server酱差不多,但我这个每天20/条,包够用的。我研究研究这个ntfy,也把接入进去,哈哈

2 个赞

在用gotify~

1 个赞

谢谢分享,那必须部署一个:wink:

1 个赞

折腾了好多开源的 ,都不太满意,最后还是改成 qq 邮箱了 ,真是太方便了。。