Docker+贝锐花生壳内网穿透:3步搭建可远程访问的ntfy私有推送服务

在自动化运维、脚本监控以及IoT设备管理等场景中,及时的状态通知至关重要。ntfy作为一个极简的基于HTTP的推送通知服务,允许开发者仅通过简单的PUT或POST请求就能向手机或桌面发送通知,无需复杂的注册或配置。

descript

然而,出于数据安全和成本考虑,我们通常将ntfy部署在本地局域网(如公司内网服务器、NAS或树莓派)中。这就带来了新的难题:一旦离开内网环境,如何接收这些重要的报警通知?

接下来将详细介绍如何在Linux环境下通过Docker部署ntfy,并通过免费可用的贝锐花生壳内网穿透技术,在不改变网络架构、无需公网IP的前提下,快速实现ntfy服务的远程访问。

一、 本地环境搭建:Docker部署ntfy服务

首先,我们需要在本地Linux设备上将ntfy服务运行起来。推荐使用Docker进行容器化部署,这能最大程度简化依赖管理。

如果您的设备尚未安装Docker环境,可以通过官方脚本快速完成安装。安装完成后,记得启动Docker服务:

# 安装Docker并启动服务

sudo curl -fsSL https://github.com/tech-shrimp/docker_installer/releases/download/latest/linux.sh| bash -s docker --mirror Aliyun

sudo systemctl start docker

环境准备就绪后,我们直接从Docker Hub拉取ntfy的官方镜像 binwiederhier/ntfy,并执行启动命令。为了保证数据持久化和服务的可用性,启动时需要配置端口映射与缓存目录挂载:

# 拉取镜像

sudo docker pull binwiederhier/ntfy

# 启动容器

# 注意:我们将容器80端口映射到宿主机80端口,并挂载/var/cache/ntfy用于存储数据

sudo docker run -v /var/cache/ntfy:/var/cache/ntfy -p 80:80 -it binwiederhier/ntfy serve --cache-file /var/cache/ntfy/cache.db

容器启动成功后,ntfy服务即已在局域网内上线。此时,您可以尝试在同局域网的浏览器中访问 http://本地IP(例如本例中的 http://10.168.123.227),如果能看到简洁的ntfy Web交互界面,即说明本地部署无误。

descript

二、 打通网络壁垒:安装与配置花生壳

为了打破局域网的限制,实现外网访问,我们需要在运行ntfy的设备上安装贝锐花生壳客户端。它能将内网服务端口映射到公网域名,建立一条安全的访问隧道,并且免费可用。

客户端安装与激活

请访问贝锐官网下载页面,根据您的系统架构(如x86或ARM)下载对应的Linux安装包。下载完成后,使用 dpkg 命令进行安装:

descript

安装过程会自动注册服务,终端将直接输出该设备的 SN码(序列号)和默认密码(admin)。请务必记录下这组凭证,它是后续登录云端管理平台的唯一身份标识。

descript

建立内网映射隧道

所有的配置工作均在 花生壳管理平台进行,无需在Linux终端输入复杂的指令。

descript

使用SN码登录管理平台后,系统会提示进行设备激活,您可以选择使用花生壳APP扫码或输入贝锐账号密码进行绑定。激活完成后,点击左侧的“内网穿透”菜单,进入核心配置环节。

descript

descript

点击“添加映射”按钮,在弹出的配置窗口中,我们需要准确填写映射信息以确保连接通畅:

应用名称:可自定义,如“ntfy-notify”。

映射类型:选择HTTP或HTTPS,以便通过网页和API进行访问。

内网主机:填写部署了Docker容器的本机局域网IP(如 10.168.123.227)。

内网端口:填写容器对外暴露的端口号(本例中为 80)。

descript

确认信息无误后点击保存,系统会自动生成一个外网访问地址。至此,一条连接互联网与您本地ntfy服务的隧道已经建立完成。

descript

三、远程访问实测:随时随地接收通知

现在,无论身处何地,只要有互联网连接,您都可以通过花生壳生成的域名访问您的私有通知服务。

在浏览器中输入该外网地址,即可直接进入ntfy的管理面板。更重要的是,您可以在任何外部网络的脚本或程序中,调用该地址发送通知。

descript

我们可以简单通过一行 curl 命令来测试远程推送功能的连通性:

# 测试从外网向内网ntfy发送消息

curl -d "Backup task completed successfully" http://你的花生壳域名/my_scripts

发送指令后,刷新浏览器或查看订阅了该主题的手机端,您将立即收到这条来自远程的推送消息。

通过Docker+贝锐花生壳 的组合,我们仅需简单的几步操作,便低成本地解决了内网服务“出不去”的难题,为自动化运维监控构建了稳定可靠的信息触达通道。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值