[发布]Pulse Monitor 一款极度简约的探针搭建教程

[发布]Pulse Monitor 一款极度简约的探针搭建教程

__2025年12月25日 __3条评论 __432次阅读 __0人点赞 __Tao_Qi

趁圣诞节顺带发布一个ai赋能的自制探针,主打一个极度简约的风格 之前的xhh.one 由于azure 2000美金突然到期的原因源码丢了 这次重做赶紧存了下

演示站点

首页截图

后台截图

项目的github地址是 https://github.com/xhhcn/Pulse/ 这个探针的主要功能有

  • docker镜像大小25.7MB(轻量化)
  • 私有化模式设置和分享链接(含有效时长)
  • 自定义logo和探针名称
  • 多tcping目标延迟切换
  • 首页搜索对应小鸡关键词
  • 中英文翻译切换
  • 小鸡名称可重复
  • 为小鸡添加tag
  • 主控鸡和agent通过secret密钥验证后通讯

主要基于astro和golang 感觉用astro的探针好少

搭建流程

最简单的搭建方式,直接运行如下几行即可通过docker-compose搭建完成
[code]

mkdir pulse && cd pulse
curl -sSL https://raw.githubusercontent.com/xhhcn/Pulse/main/docker-compose.yaml -o docker-compose.yaml
docker compose up -d

[/code]

由于该项目已经容器化,因此对于一些免费的容器网站如claw run 同样可以通过容器直接搭建,对于默认情况下并没有开启docker的ipv4因此适用于大多数没有纯ipv6小鸡的情况

同样也可以通过服务端的二进制文件直接运行
[code]

curl -fsSL https://raw.githubusercontent.com/xhhcn/Pulse/main/install-pulse-server.sh | sudo bash

[/code]

客户端的一键搭建命令已经在后台给出,直接点击下方logo处就可以复制命令

同样也可以通过脚本命令直接连接
[code]

curl -sSL https://raw.githubusercontent.com/xhhcn/Pulse/main/client/install.sh | sudo bash -s -- \
  --id  --server  --secret 

[/code]

或者用windows命令
[code]

powershell -ExecutionPolicy Bypass -Command "& { $env:AgentId=''; $env:ServerBase=''; $env:Secret=''; irm https://raw.githubusercontent.com/xhhcn/Pulse/main/client/install.ps1 | iex }"

[/code]

客户端开放的端口默认为9090,如需更改可以进入/etc/systemd/system/pulse-client.service修改其环境变量的端口再重新加载后启动就可以啦,客户端采用按需采集,避免持续后台运行,且运行单一HTTP服务,资源占用<20MB

纯ipv6监控需求

对于有纯ipv6监控需求的友友们需要先打开docker的ipv6,具体操作如下

  1. 开启docker的ipv6转发

[code]

# 检查 IPv6 是否启用
ip -6 addr show

# 检查 IPv6 转发是否启用
sysctl net.ipv6.conf.all.forwarding
# 如果输出为 0,需要启用:
sudo sysctl -w net.ipv6.conf.all.forwarding=1

# 永久启用(编辑 /etc/sysctl.conf)
echo "net.ipv6.conf.all.forwarding=1" | sudo tee -a /etc/sysctl.conf

[/code]

  1. 配置 Docker Daemon 启用 IPv6

编辑或创建/etc/docker/daemon.json文件

[code]

{
  "ipv6": true,
  "fixed-cidr-v6": "fd00:dead:beef:c0::/80",
  "experimental": true,
  "ip6tables": true
}

[/code]

  1. 重启docker完成设置

[code]

sudo systemctl restart docker

[/code]

  1. 最后通过如下docker compose配置完成搭建

[code]

services:
  pulse:
    image: xhh1128/pulse:latest
    container_name: pulse-monitor
    ports:
      - 8008:8008
    volumes:
      - pulse-data:/app/data
    restart: unless-stopped
    networks:
      - pulse-network

volumes:
  pulse-data:

networks:
  pulse-network:
    enable_ipv6: true
    ipam:
      driver: default

[/code]

具体参数和映射端口都可以通过配置文件调整,搭建完成后可以把对应的服务端口反代到域名并开启cdn

结语

对于该小探针的开发感谢

@AR-Louxs 对于UI设计的建议
@aessy 对于细节和移动端优化的建议
@福尔摩斯 对于私有化功能和分享链接的建议

欢迎大家自由fork进行二次开发!

更新2025.12.26凌晨

晚上友友们太热情了,原先并发加载tcping数据带来的cpu过载造成了今晚探针小鸡多次失联,刚才修复了一下确保一次只能加载一个小鸡tcping数据 保证每次加载的cpu占用最多在30%左右,另外添加了服务端二进制文件搭建脚本

本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可

__点赞 __分享

__ __ __ __ __ __ 打开微信“扫一扫”,打开网页后点击屏幕右上角分享按钮

__No Tag

最后编辑:2025年12月25日

< 上一篇

下一篇 >

  1. 良子本人胃袋这一块说道:

2025年12月25日 下午8:05

好看的

回复

  1. dyxmo说道:

2025年12月25日 下午8:08

我超 Astro

回复

  1. AlterEgo说道:

2025年12月25日 下午8:41

太棒了大佬

回复

发表回复 取消回复

电子邮件地址不会被公开。必填项已用 * 标注

__

*

__

*

__

*

__

本文著作权归作者 [ doudoudoubao ] 享有,未经作者书面授权,禁止转载,封面图片来源于 [ 互联网 ] ,本文仅供个人学习、研究和欣赏使用。如有异议,请联系博主及时处理。

发表留言