雨云搭建 Gotify 自托管消息推送服务

用雨云 KVM 云服务器 Docker 自建 Gotify:把服务器告警、脚本结果、部署通知实时推到手机,不限量、数据自管的推送通道
发布于 更新于
15

服务器告警、定时脚本结果、部署完成通知,最怕发不出去或依赖第三方额度。Gotify 是一个开源的自托管推送服务,自己掌控推送通道,把消息直接推到手机 App,不限条数、不经过任何外部平台。本文在雨云 KVM 云服务器上把它跑起来,并联动监控做实时告警。

一、为什么自己搭推送

第三方推送服务要么收费、要么限条数、要么要求数据过它们的服务器。Gotify 把通道完全收回到你自己手里:

  • 不限量:自家服务器,想推多少推多少,没有月度额度焦虑。
  • 数据自管:推送内容只过你的服务器,敏感告警不落第三方。
  • 多端收:提供 Android / iOS 客户端,WebSocket 长连,消息近乎实时到达。

它和本站 12261 的 Uptime Kuma、12239 的哪吒面板是天然搭档——监控发现问题,Gotify 负责把问题推到你手机。

合规提示:Gotify 仅用于你自身系统的运维通知与合法提醒,不要用于群发营销、骚扰或任何违法违规推送。

二、准备工作

  • 雨云 KVM 云服务器(1 核 1G 起),Debian 12,已装 Docker。
  • 一个解析好的域名(配 HTTPS,客户端走加密 WebSocket)。

三、Docker 部署

新建 ~/gotify/docker-compose.yml

version: "3"
services:
  gotify:
    image: gotify/server:latest
    container_name: gotify
    ports:
      - "8080:8080"
    volumes:
      - ./data:/app/data
    environment:
      - TZ=Asia/Shanghai
      - GOTIFY_DEFAULTUSER=admin
      - GOTIFY_DEFLAULTPASSWORD=请改强密码
    restart: unless-stopped

启动 docker compose up -d,访问 http://服务器IP:8080 用默认账号登录(登录后务必改密码,并在”Users”里新建专用应用令牌)。后台”Apps”页点 Create 生成一个应用,拿到 Token,推送就靠它。

四、在脚本里调用推送

推送就是一次带 Token 的 POST,最简单用 curl:

curl -X POST "https://你的域名/message?token=你的TOKEN" 
  -F "title=部署完成" 
  -F "message=订单服务 v1.4 已上线" 
  -F "priority=5"

Python 里用 requests:

import requests
requests.post("https://你的域名/message",
    params={"token": "你的TOKEN"},
    data={"title": "定时任务", "message": "备份已跑完", "priority": 5})

priority 1-10 控制紧急程度,客户端可据此决定是否响铃。

五、和监控联动

  • Uptime Kuma(12261):通知方式选”Gotify”,填服务器地址和 Token,站点宕机立刻推手机。
  • Watchtower(12312):用 shoutrrr 把更新结果发到 Gotify,容器升级成功与否手机看得见。
  • 哪吒面板(12239):本身告警也可接 Webhook,转 Gotify 统一收口。

一个 Token 一个应用,建议”监控告警””部署通知””脚本结果”分不同应用,手机上分组清晰。

常见问题(FAQ)

Gotify 和 Server 酱、Bark 有什么不同?
Server 酱、Bark 都依赖它们的中转服务或苹果推送,有额度或平台限制;Gotify 服务器在你自己机器上,推送通道完全自管,不限条数、数据不出私域。
消息推送会延迟吗?
客户端走 WebSocket 长连接,服务端一收到 POST 立刻下发,公网正常情况秒到。断网重连后会补推离线消息。
iOS 没有官方 App 怎么办?
Android 有官方 Gotify App;iOS 可用兼容的第三方客户端,或直接用网页版收消息。部署时务必配 HTTPS,否则客户端连不上。
雨云优惠码 admin01 怎么用?
下单页优惠码输入框填 admin01 即享五折,以结算页显示为准。Gotify 极轻量,1 核 1G 套餐足够长期运行,支持 7 天无理由退款,可先试跑再决定。

本文由作者原创/授权发布于极跃圈(jiyueip.com)未经许可,禁止转载。题图来自Unsplash,基于CC0协议。

声明:极跃圈(JIYUEIP.com)内网友所发表的所有内容及言论仅代表其本人,并不反映任何极跃圈(JIYUEIP.com)之意见及观点。

0 讨论
热门最新
总结
暂无总结
0 / 600

用雨云 KVM 云服务器 Docker 自建 Beszel 轻量监控:多主机资源一屏总览,接 Gotify 告警,与 Uptime Kuma 互补,含优惠码 admin01 五折。