应用介绍
Gotify 是一款开源、可自托管的消息通知服务,支持通过 REST API 从各类系统与脚本发送消息,再在 Web 控制台或移动端客户端中统一接收。它常用于整合家庭服务器告警(如磁盘空间不足、容器更新、备份结果)、监控工具通知(如 Uptime Kuma、Prometheus 告警)以及个人自动化脚本的推送。相比将通知散落在邮件或不同 IM 平台,Gotify 将它们集中到一个简单可靠的推送通道,并支持应用分组、Token 管理与优先级。
Gotify 的服务端与客户端均开源,镜像为多架构适配,部署非常简单。结合反向代理绑定域名与 HTTPS,能够安全地从外网接收通知。对于已经使用 Bark、PushDeer 等推送工具的用户,Gotify 的优势在于更强的服务端可控性与插件扩展能力。
安装说明
前提依赖
- 准备一个持久化数据目录,用于存放配置与消息数据
- 建议在反向代理后启用 HTTPS,保护 Token 与消息传输安全
- 如需与外部数据库结合,支持 SQLite(默认)、PostgreSQL 等
安装配置
以下示例使用官方镜像 gotify/server,映射到宿主机 8080 端口,并通过环境变量设置初始管理员密码:
version: "3.8"
services:
gotify:
image: gotify/server:latest
container_name: gotify
ports:
- "8080:80"
environment:
- TZ=Asia/Shanghai
- GOTIFY_DEFAULTUSER_PASS=admin
volumes:
- ./gotify_data:/app/data
restart: unless-stopped
保存为 docker-compose.yml,创建 gotify_data 目录后执行:
docker compose up -d
如果你计划使用外部数据库(如 PostgreSQL),请参考官方配置文档,将相关方言与连接字符串通过环境变量传入。
使用说明
- 首次访问:浏览器打开 http://NAS_IP:8080,以 admin 用户登录(初始密码见环境变量)
- 创建应用:在“应用”页为每个系统/脚本创建独立应用,生成对应的 Token
- 发送消息:通过 REST API 使用 Token 推送消息;可设置优先级与标题/正文
- 客户端:在移动端安装 Gotify App,填入服务地址与用户凭据,即可接收通知
- 安全建议:生产环境建议置于反向代理后启用 HTTPS,避免 Token 泄露
开源信息
- 官网与文档:https://gotify.net/docs/install [来源]
- 配置参考:https://gotify.net/docs/config [来源]
- Docker 镜像:gotify/server 或 ghcr.io/gotify/server(多架构) [来源]