Files
ros-dpi/docker-compose.yml
T
Su YijunandClaude Opus 5.5 ace2eaa3a5 feat: debug7/8 接入 sing-box 与 MosDNS、ASN 识别、识别库自动更新、全站布局审计(v0.3.0)
识别准确度(debug7)
- 可选接入 sing-box Clash API:按来源终端 + 域名 + 字节记账,代理隧道与 FakeIP 流量不重复计算;未接入时代理机器流量标为旁路代理隧道
- 可选接入 MosDNS 审计日志:终端 + IP → 域名
- 地址与密钥由用户在 系统设置 → 外部数据源 填写(或环境变量),不填不启用
- IP→ASN 库(iptoasn.com,PDDL,运行时每天下载),无域名流量按归属识别;实时连接 / 访问目标显示归属与国家
- 健康指数新增旁路代理提示;概览应用数区分今日出现与规则库总数

识别库自动更新(debug8)
- 每天检查 v2fly 最新提交,下载转换后自检(抽样域名、应用数),通过后热加载,失败保留旧库
- 识别规则页新增识别库面板(来源、版本、规模、许可证、检查结果、自动更新开关)
- 转换逻辑移到 app/classify/v2fly.py,生成文件记录来源提交

布局审计
- 手机上表格隐藏次要列、名称下补充关键信息;子标签横向滑动;统计卡改为卡片样式;平板断点调整
- 系统设置拆为四个子标签;识别规则页整理;重复名称只显示一次;少量数据点的折线显示数据点
- 测试环境不启动后台定时任务,修复整点落库导致的偶发失败

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-23 00:47:35 +08:00

29 lines
1.5 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# ROS-DPI:RouterOS 终端流量与应用统计
# 前提:已有 MySQL 5.7+ / 8.x,并已按 README「准备数据库」建好库和账号
# 用法:保存为 docker-compose.yml,把 LAN_CIDRS 改成你的内网网段,然后 docker compose up -d
# 浏览器打开 http://<本机IP>:8080,按安装向导填写 MySQL 信息、设置管理员密码
services:
ros-dpi:
image: suyijun8182/ros-dpi:latest # 也可用 ghcr.io/suyijun8182/ros-dpi:latest
container_name: ros-dpi
restart: unless-stopped
ports:
- "8080:8080/tcp" # Web 界面
- "2055:2055/udp" # IPFIX / NetFlow:RouterOS Traffic Flow 发到这里
- "37008:37008/udp" # TZSP:RouterOS 镜像的 DNS 应答和 HTTPS/QUIC 握手包发到这里
environment:
TZ: Asia/Shanghai
# MySQL 连接信息在首次打开网页时填写(保存在 ./data/db_config.json)
# 「必改」内网网段,逗号分隔(之后也可在 系统设置 → 网络 里改)
LAN_CIDRS: 192.168.88.0/24
# 管理员 admin 的初始密码;留空则首次打开网页时设置
ADMIN_PASSWORD: ""
# RouterOS 只读 API(可选:显示主机名、WAN 速率)
ROS_URL: "" # 例如 https://192.168.88.1
ROS_USER: ""
ROS_PASSWORD: ""
ROS_VERIFY_TLS: "false"
# 旁路代理(sing-box)和内网 DNS(MosDNS)在网页 系统设置 → 外部数据源 里填写,不需要写在这里
volumes:
- ./data:/app/data # 保存数据库连接配置,务必保留这个卷