AI摘要
Message-Pusher 是一款多功能消息推送服务,支持多种推送方式,包括邮件、微信、QQ、企业微信、飞书、钉钉、Bark App、WebSocket、Telegram、Discord 和腾讯云自定义告警。它支持自定义 Webhook、Markdown、异步消息发送、用户管理、Cloudflare Turnstile 用户校验、公告发布和 API 兼容性。可以通过 Docker 或手动部署,并提供详细的部署教程。
Message-Pusher 是一款多功能消息推送服务,支持多种推送方式,包括邮件、微信、QQ、企业微信、飞书、钉钉、Bark App、WebSocket、Telegram、Discord 和腾讯云自定义告警。它支持自定义 Webhook、Markdown、异步消息发送、用户管理、Cloudflare Turnstile 用户校验、公告发布和 API 兼容性。可以通过 Docker 或手动部署,并提供详细的部署教程。
✨ 搭建专属于你的消息推送服务,支持多种消息推送方式,支持 Markdown,仅单可执行文件,开箱即用✨
描述
多种消息推送方式:
- 支持自定义 Webhook,反向适配各种调用平台,你可以接入各种已有的系统,而无需修改其代码。
- 支持在 Web 端编辑 & 管理发送的消息,新消息发送后 Web 端即时刷新。
- 支持异步消息发送。
支持用户管理,支持多种用户登录注册方式:
- 邮箱登录注册以及通过邮箱进行密码重置。
- GitHub 开放授权。
- 微信公众号授权(需要额外部署 WeChat Server)。
- 支持 Markdown。
- 支持 Cloudflare Turnstile 用户校验。
- 支持在线发布公告,设置关于界面以及页脚。
- API 兼容其他消息推送服务,例如 Server 酱。
部署
通过 Docker 部署
部署:
docker run -d --restart always --name message-pusher -p 3000:3000 -e TZ=Asia/Shanghai -v /home/ubuntu/data/message-pusher:/data justsong/message-pusher
更新:
docker run --rm -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower -cR
开放的端口号为 3000,之后用 Nginx 配置域名,反代以及 SSL 证书即可,具体参考详细部署教程。
数据将会保存在宿主机的 /home/ubuntu/data/message-pusher
目录(只有一个 SQLite 数据库文件),请确保该目录存在且具有写入权限,或者更改为合适的目录。
Nginx 的参考配置:
server{
server_name msgpusher.com; # 请根据实际情况修改你的域名
location / {
client_max_body_size 64m;
proxy_http_version 1.1;
proxy_pass http://localhost:3000; # 请根据实际情况修改你的端口
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_cache_bypass $http_upgrade;
proxy_set_header Accept-Encoding gzip;
}
}
之后使用 Let's Encrypt 的 certbot 配置 HTTPS:
# Ubuntu 安装 certbot:
sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/bin/certbot
# 生成证书 & 修改 Nginx 配置
sudo certbot --nginx
# 根据指示进行操作
# 重启 Nginx
sudo service nginx restart
手动部署
从 GitHub Releases 下载可执行文件或者从源码编译:
git clone https://github.com/songquanpeng/message-pusher.git cd message-pusher/web npm install npm run build cd .. go mod download go build -ldflags "-s -w" -o message-pusher
运行:
chmod u+x message-pusher