剪藏#剪藏#谢同学的NAS笔记

告别公共推送,搭建属于你的Bark服务

2026 年 8 月 18 日1 分钟
分享Twitter / XTelegram微博
告别公共推送,搭建属于你的Bark服务 封面

今天分享一款干净好用的iOS推送工具——Bark。

它专为苹果手机设计,免费无广告、不限推送次数,数据隐私完全由自己掌控。依托系统原生推送通道,省电又稳定。

无需注册账号,上手极简单。既能直接使用官方公共服务快速发通知,也能动手搭建私有推送服务,确保数据绝不外泄。

这篇文章带你先快速体验官方服务,再分别通过Docker本地部署和Cloudflare Worker免费部署,一步步搭建属于自己的专属Bark推送服务。

一、Bark是什么?

Bark是一款轻量化免费推送通知工具,依托苹果 APNs 推送机制运行。

软件支持iOS全品类高级推送能力,可实现消息分组归类、自定义推送图标与提示音、时效性提醒、高优先级重要告警等实用功能。

既可以直接使用官方免费公共服务快速上手体验,也能自行搭建私有服务端,还支持端到端推送加密,兼顾便捷性与数据隐私安全性,适配个人日常消息推送、服务告警提醒等多种使用场景。

官方服务使用步骤

App Store搜索Bark下载安装,打开 Bark App,首页自动生成专属的key。有了这个key,你就可以通过浏览器、命令行或第三方工具发送推送。

Notion image

发送第一条测试推送

格式:

JAVASCRIPT
https://api.day.app/yourkey/通知标题/通知内容

示例(直接浏览器访问):

JAVASCRIPT
https://api.day.app/yourkey/HelloBark/这是第一条官方推送

访问后,手机立即收到推送通知,提示音+弹窗,体验拉满!

Notion image

进阶推送参数(可选)

官方服务支持自定义推送样式,常用参数:

  • ?sound=minuet:为推送设置铃声

  • ?badge=1:显示角标

  • ?group=工作:分组管理通知

  • ?url=https://xxx:点击通知跳转链接

示例:

JAVASCRIPT
https://api.day.app/ABCD-1234-EFGH-5678/工作提醒/会议10分钟后开始?sound=minuet&group=工作&url=https://www.baidu.com

Notion image

Notion image

官方服务优缺点

  • 优点:零成本、零配置、即用即走,无需服务器,新手首选

  • 缺点:依赖第三方公共服务,推送频率受限、数据经过官方服务器、隐私性一般,不适合高频/敏感通知场景

二、为什么Bark私有部署要用HTTPS?

1. 保护推送数据安全

  • HTTP 传输是明文,推送内容、设备密钥极易被窃听或篡改,隐私风险高。

  • HTTPS 通过 TLS 加密传输,能防止中间人攻击,全程保护你的推送隐私。

2. 本文的两种HTTPS方案

  • 私有部署 + Tailscale:虚拟内网 + 自动生成可信 HTTPS,无需公网 IP、域名和备案。

  • Cloudflare Worker + 免费域名:无服务器架构 + 自带可信 HTTPS,无需服务器,只需一个免费域名即可。

三、进阶版:Docker Compose + Tailscale 私有部署

想要一个完全属于自己的推送服务,Docker 是最快的手段。

为了安全,我们结合Tailscale来实现内网穿透。好处是:不需要公网IP,不需要配置路由器端口转发,甚至连HTTPS证书都不用操心,安全性拉满。

第一步:创建部署目录

通过SSH或群晖终端执行以下命令:

JAVASCRIPT
# SSH 登录后执行,创建bark目录并进入
mkdir -p /volume1/docker/bark/data

#设置权限,确保容器能读写
sudo chown -R 1026:100 /volume1/docker/bark/data
sudo chmod -R 755 /volume1/docker/bark/data

第二步:docker-compose部署

docker-compose部署更便捷,可通过配置文件统一管理容器参数,后续重启、更新bark更高效。

打开群晖Container Manger项目新建,粘贴以下配置即可启动:

JAVASCRIPT
version'3.8'

services:
bark:
    image:finab/bark-server:latest
    container_name:bark
    restart:always
    volumes:
      -/volume1/docker/bark/data:/data
    ports:
      -"8080:8080"
    environment:
    -TZ=Asia/Shanghai
    -PUID=1026# 修改为你的 UID,通过 `id` 命令查看
    -PGID=100# 修改为你的 GID,通过 `id` 命令查看

参数说明

  • volumes: 将群晖本地/volume1/docker/bark/data映射到容器内的/data

  • ports: 将容器端口8080映射到主机端口8080

  • PUID=1026、PGID=100: 容器进程以admin身份运行,避免权限拒绝。

⚠️ 注意:/volume1/docker/bark/data 需替换为你实际创建的文件夹路径。可在 File Station 中右键文件夹 → 属性 → 查看完整路径。

第三步:浏览器访问

浏览器访问:http://100.94.166.70:8080/(100.94.166.70为我的tailscale内网ip) 看到 Bark 首页,显示ok,说明部署成功!

Notion image

第四步 配置Tailscale:免域名HTTPS

让Tailscale在后台启动一个HTTPS反向代理。监听443端口,把来自设备Tailscale域名的HTTPS加密流量,转发到本机 127.0.0.1:8088的HTTP服务。

在NAS宿主机上执行(不是Docker容器内):

  • 如果仅tailscale内网访问,使用tailscale serve:
JAVASCRIPT
sudo tailscale serve --bg --https=443 --set-path=/bark http://127.0.0.1:8080
  • 如需公网访问,使用「tailscale funnel」:
JAVASCRIPT
sudo tailscale funnel --bg --https=443 --set-path=/bark http://127.0.0.1:8080
  • 验证配置
JAVASCRIPT
tailscale serve status

执行后,会返类似回如下信息,说明代理成功:

https://synology.tailb81e33.ts.net/bark |-- proxy http://127.0.0.1:8080

第五步:发送私有推送测试

  • 发送私有推送测试

示例:

JAVASCRIPT
https://synology.tailb81e33.ts.net/bark/yourkey/私有推送/这是Tailscale加密推送

手机秒收推送,HTTPS加密+虚拟内网传输,隐私拉满!

Notion image

方案优势

  • 免公网、免域名、免备案、免证书,全程无成本

  • 数据走虚拟内网,不经过公网,隐私性极强

  • 配置极简,Docker一键部署,Tailscale自动HTTPS

  • 稳定可控,24小时运行,不限推送次数/频率

四、无服务器:Cloudflare Worker部署 + DNSHE免费域名

如果你没有服务器、不想折腾Docker,Cloudflare Worker是终极方案——无服务器架构,免费额度足够个人使用,自动提供可信HTTPS。

该方案仅推荐个人用户使用,适合发送少量推送,不适合频繁或大批量推送。

1 环境准备

2 部署步骤

整个过程参考github的bark-worker项目。

完整路径为:cwxiaos/bark-worker/README.zh.md

第一步:创建D1数据库(存储设备密钥+推送记录)

  • 登录 Cloudflare 控制台 → 左侧「构建」→「存储和数据库」→「D1 SQL数据库」

  • 点击「创建数据库」,名称填 database_bark,确认创建

第二步:创建Worker并部署代码

  • 自定义Worker名称(如 my-bark),点击「部署」→「编辑代码」

Notion image

Notion image

  • 删除默认代码,从github复制粘main.js代码

Notion image

第三步:绑定D1数据库到Worker

  1. 点击Worker页面「绑定」→「添加绑定」→「D1数据库」→「添加绑定」

Notion image

  1. 变量名填 database,选择刚才创建的 database_bark 命名空间,添加绑定

Notion image

Notion image

第四步:添加域名

  • 点击Worker页面「域」→「添加域名」

  • 选择你的域名

  • 设置子域名bark,添加域名

这样,就得到一个访问公网可访问域名

JAVASCRIPT
https://bark.5itech.ccwu.cc

3.Bark App配置与推送测试

  • App配置服务器地址 打开 Bark App → 「服务器」→ 「+」,填写:
JAVASCRIPT
https://bark.5itech.ccwu.cc

Notion image

Notion image

  • 发送推送测试

格式与官方服务一致:

JAVASCRIPT
https://https://bark.5itech.ccwu.cc/yourkey/Worker推送/无服务器推送测试

访问后,手机立即收到推送。

Notion image

注意:防止他人使用你的 Bark-Worker,可以配置变量BASIC_AUTH。浏览器访问时,会弹出认证窗口,输入用户名密码。

Notion image

Notion image

选择建议

  • 新手入门 → 直接用官方服务

  • 有设备+隐私优先 → 选Docker+Tailscale(首选推荐)

  • 无设备+零维护 → 选Cloudflare Worker

总结

Bark不仅是一款简单的推送工具,更是可控、安全、隐私优先的通知解决方案。从官方服务的快速上手,到私有部署的完全可控,再到无服务器的零成本便捷,三种方案覆盖不同需求场景。

赶紧动手部署属于自己的Bark推送服务,告别第三方推送的限制,掌控每一条通知!

关于安卓用户的补充说明

目前Bark仅支持iOS设备,如果使用的是安卓手机,无法直接使用Bark接收推送,这里有两个方案:

  1. 安卓用户专属方案:ntfy

可以使用ntfy作为替代工具,它是一个跨平台的开源推送服务,和Bark一样支持自建服务、自定义推送内容,而且原生支持安卓/iOS/桌面端,使用逻辑也和Bark高度相似,上手门槛很低。

  1. 跨平台组合方案:Bark + ntfy 一起用

如果你身边既有iOS也有安卓设备,可以把两者结合起来:

  • iOS设备继续用Bark接收推送,稳定省电,体验最好。

  • 安卓设备用ntfy接收相同的通知,实现跨平台同步提醒。

  • 两个的推送接口格式也很容易适配,一套通知脚本可以同时推送到Bark和ntfy。

如果你对ntfy的部署和使用感兴趣,我也可以整理一份ntfy入门教程,或者补充一个Bark + ntfy通用的推送教程,让你一套代码搞定多设备推送。

Notion image

Notion image

“分享”、“点赞”,给我充点儿电吧~

原文地址: https://mp.weixin.qq.com/s?__biz=Mzk2NDMzMzY2MA==&mid=2247484334&idx=1&sn=8c0f25eda346a93274499b84308e4977&chksm=c55288cb1c40195d32b0bca0771179610002d9b1b0e42120d1b4e2f00ed6bf6705a8427ab2d7&mpshare=1&scene=1&srcid=05233QcevAcP0w5B7armrCO0&sharer_shareinfo=4708b9fd9099a7ed1aed79ae7c8ca1c3&sharer_shareinfo_first=4708b9fd9099a7ed1aed79ae7c8ca1c3#rd

相关文章