Releases: nuomiiiii/komari
Release list
2.2.1
Komari Lite 2.2.1 正式版
重要提示
Important
本版本已经完成系统 Web UI 与原内置默认主题的解耦,并删除原有内置主题,改为我二开的 Nezha 主题(在有其他主题的情况下可删除)。后续系统 UI 独立控制,主题只影响公开大屏。如果您仍需要原有内置主题,请根据链接导入我的独立提取版;该版本我不保证维护,建议使用其他第三方主题:https://github.com/nuomiiiii/komari-Classic
仪表盘配置
- 新增近 15 分钟丢包排行模块。
- 近 15 分钟丢包排行按每台服务器所有监测任务中的最差结果计算;只要存在实际样本且丢包率大于
0%即进入排行,不再设置不适合低频任务的样本覆盖门槛。全部正常时显示“近 15 分钟网络正常”。 - 延迟抖动根据相邻有效分钟的平均时延差排序;优先比较当前分钟与上一分钟,在采样较少、上报延迟或分钟边界错位时回退到最近一组相邻有效分钟。负数、无效时延和无有效样本的数据不进入排行。
Top 5 / Top 10默认单列,Top 15 / Top 20在合适的宽屏和卡片宽度下自动双列,手机端保持单列;三分之一、二分之一和整行宽度下均保持统一密度、完整数量和文字可读性。- 修复“今日实时流量”“每日计费流量”图表左侧刻度被裁切的问题,长刻度在桌面端和手机端均可完整显示,且不牺牲字号和可读性。
跳转与加载体验
- 排行跳转会读取当前启用主题声明的 UUID 路由,不与特定主题绑定;未声明对应导航能力的第三方主题会安全回退到服务器详情页。
- 平均时延和延迟抖动排行进入服务器网络总览,避免多个探测任务的综合结果错误落入某一个具体任务;近 15 分钟丢包排行进入该服务器丢包最差的监测任务。
- 仪表盘设置、摘要和图表增加按管理员账号、模块组合及 Top 数量隔离的会话快照。刷新页面或从公开大屏返回时,会立即恢复上一帧完整内容,再在后台静默更新,不再清空卡片或重复显示骨架屏。
- 静默刷新期间保留现有卡片和图表,新结果完整返回后再原地替换;请求失败时继续保留旧数据,不产生二次闪烁。会话快照仅保存最终响应,最长保留 10 分钟。
刷新与缓存
- “实时概览刷新”和“历史图表刷新”默认均调整为
30s。 - 实时概览新增
15s;历史图表提供15s / 30s / 60s / 120s,移除300s。已保存的旧300s配置会安全归一为120s。 - 在线状态、CPU、内存和磁盘等实时模块跟随实时概览周期;流量、时延趋势、平均时延、延迟抖动和丢包排行等历史模块跟随历史图表周期。
- 修复前后端缓存使用不同时间基准导致新数据未按设置周期刷新的问题;选择
15s后不再被旧缓存额外延迟到一分钟或两分钟。 - 同一模块的并发请求只计算一次,缓存仅保存有界的最终响应,不缓存原始指标点,也不写入数据库。
查询与历史数据
- 优化仪表盘/公开大屏数据处理流程,修正历史指标清理逻辑,减少重复查询和临时内存占用。
- 六小时延迟趋势按有效样本数加权,不直接平均各节点平均值;负数时延、全丢包产生的无效时延和空样本继续排除。
- 公开接口保持现有 JSON 字段、层级、数据类型、时间顺序、标签、点数限制、空数据填充和权限过滤不变,当前主题及第三方主题无需为批量查询做适配。
主题与系统界面
- 系统 Web UI 与默认主题解耦,后续系统 UI 独立控制,主题只影响公开大屏,不再影响管理后台、远程终端等系统页面。
- 默认集成 Nezha 主题,保留独立更新和删除能力。
- 主题管理增加最后一个主题保护,系统中必须至少保留一个可用主题,避免公开大屏因主题全部删除而无法访问。
- 原经典主题拆分为独立的
komari-Classic主题包,可单独安装和更新。 - 修复主题导航入口、Logo、国家/地区图标及其他静态资源在不同部署路径下缺失的问题。
- 修正未初始化、404 及主题异常场景的页面提示;系统未初始化时访问公开大屏会直接进入初始化流程。
设置与交互修复
- 新节点在“编辑信息”中首次设置流量统计方式时默认选择“总和”。
- 远程终端节点卡片改为整卡点击,桌面端和手机端均可从任意位置进入;与服务器列表保持一致,在新分页打开终端,并移除卡片内的 IP 复制按钮以避免点击冲突。
- 修复仪表盘设置页面过度下滑、布局预览空隙、不同分辨率下内容显示不全,以及 PC 三列布局卡片底边错位的问题。
- 服务器删除确认框会加粗显示目标服务器名称,降低误删风险。
- 修正内置 HTTPS 延迟关闭时状态先于监听器停止的问题,使界面状态与真实服务生命周期保持一致。
- 保留 2.2.0 的 HTTPS 引用策略修复,允许第三方图片资源接收来源站点,同时不暴露完整页面路径。
发布信息
- 正式版发布时间:2026-08-07 21:57(北京时间)
- Komari 构建号:
r7m2k9x - Komari 与 Komari Web 版本:
2.2.1
Docker
docker pull ghcr.io/nuomiiiii/komari:2.2.1docker pull ghcr.io/nuomiiiii/komari:latestLinux 一键安装
curl -fsSL https://raw.githubusercontent.com/nuomiiiii/komari/main/install-komari.sh -o install-komari.sh && chmod +x install-komari.sh && sudo ./install-komari.sh已有安装可在管理后台执行在线更新,也可以下载对应架构的单文件程序替换后重启。更新前请先备份数据库和配置文件。
Snapshot-2608080326
Komari Lite 2.2.2 更新预览
本快照用于提前验证回程线路判定、仪表盘告警交互和管理端易用性改进。快照版本可能继续调整,不建议替代正式版用于关键生产环境。
回程线路判定
- CN2 GIA/GT 改为结合跳点顺序和节点角色判定,不再仅根据 ASN 集合强制二选一。
218.30.48.*等位于首个 CN2 节点前的 AS4134 只视为境外交接,不再单独作为 CN2 GT 证据;AS23764 -> AS4809/59.43以及境外交接后持续使用 CN2 的路径会识别为 CN2 GIA。- 只有 CN2 后出现明确、连续的国内 AS4134/163 中间承载段时才判为 CN2 GT;证据不足时显示“CN2 待确认”,并保留上一次已确认线路状态,不累计切线次数,也不触发切换或恢复告警。
- 删除人工维护的
202.97.0.0/16,继续使用定期更新的 BGP/17规则;保留59.43.0.0/16作为 ASN 查询失败时的 CN2 识别依据。BGP 更新失败时继续使用上一次有效缓存。
仪表盘与告警交互
- 从当前启用主题的大屏返回管理仪表盘时,会恢复离开前的完整画面、模块位置和滚动位置,再按照用户设置的刷新间隔静默更新;刷新期间不清空卡片、不重新显示骨架屏,也不会跳回页面顶部。
- 监测告警六个分类支持跳转到现有服务器、延迟任务或回程任务页面并自动应用筛选;点击具体告警可按服务器 UUID 和任务 ID 精确定位,目标页面支持查看和清除当前筛选。
- 账单提醒统一为“已到期或处于提前提醒范围内”的当前待处理状态,并与服务器列表使用相同规则和到期时间排序,不再遗漏已经到期的服务器。
- 三分之一宽度下的告警卡片改为固定对齐的两列三行布局;不同分类的标题、摘要和分隔线保持同一基线,内容不足时仅在下方留白,半宽、全宽和手机端继续自适应。
管理端易用性
- 修复手机端主题存在可用更新时,更新标签挤压预览弹窗关闭按钮的问题;标题、更新状态和关闭按钮在窄屏下保持独立且可点击。
- Agent 配置的“保存并复制部署指令”在点击时立即发起剪贴板写入,避免保存请求结束后丢失浏览器用户操作授权;同时保留旧浏览器兼容路径。
- 仪表盘告警筛选、返回恢复和复制操作均保持现有接口、数据库结构及第三方主题跳转方式不变。
发布信息
- 快照发布时间:2026-08-08 03:30(北京时间)
- 快照版本:
Snapshot-2608080326 - 构建标识:
229612f
Docker
docker pull ghcr.io/nuomiiiii/komari:snapshot已有安装可在管理后台执行在线更新,也可以下载对应架构的单文件程序替换后重启。更新前请先备份数据库和配置文件。
2.2.0
第一次同版本更新
- 更新时间:2026-08-06 23:27(北京时间)
- 修复启用 HTTPS 后,自定义 CSS 中引用的部分第三方图床图片可能无法正常展示、被识别为下载的问题。
- 调整跨域请求的 Referrer Policy,仅发送源站信息,不暴露完整页面路径;不改变 TLS 加密、HTTP 自动跳转 HTTPS、HSTS 及证书加载逻辑。
Komari Lite 2.2.0 正式版
本版本基于 2.1.12 正式版继续开发,完成仪表盘卡片新增、Agent 配置管理、查询与资源优化、电脑端和手机端界面调整、神兽消灭等。
更新内容
web管理、仪表盘与监测概览
- 新增「延迟监测」区域:读取全部节点最近 6 小时的有效 Ping 时延点,按样本数加权计算平均时延并绘制分时趋势。
- 监测目标取已配置的 Ping 任务数;右上角显示当前「丢包告警」数量,只有全部节点的时延数据均无法读取时才标记为数据不可用。
- 新增「监测告警概览」区域,统一汇总资源阈值、离线、丢包、流量、回程线路和账单到期 6 类告警,并展示当前告警、受影响节点、今日恢复和最近事件。
- 资源告警按规则阈值判断;离线与丢包只统计已启用且当前生效的规则;流量优先采用校准后的当前周期计费量;账单按已配置的通知提前天数判断。
- 回程线路按启用任务的健康、切换和异常结果汇总;处于
切线、未知或带错误信息的节点计入影响范围,并分别展示最近切换和北京时间当日恢复事件。 - 数据库容量拆分展示主库、指标库、WAL 和 SHM;保留期取当前指标保留策略,最近封块时间取两库最近一次完成时间。
- 新增「仪表盘配置」页面,可视化选择预制布局、启用或关闭模块、拖动排序并调整模块宽度;默认布局保持正式版原有仪表盘内容,不额外开启新增模块。
- 新增服务器当日计费流量排行、平均时延排行和时延抖动性排行等模块;时延抖动按当前自然分钟与上一自然分钟平均时延之差从高到低排列,点击条目可进入对应服务器大屏。
- 排行数量支持 Top 5、Top 10、Top 15、Top 20;宽卡片自动分栏,窄卡片保持单列,内容会随卡片宽度自适应。
- 单日流量排行按每台服务器的计费规则计算并排序,上传与下载分别显示、使用不同颜色区分,不再按简单的上下行总和排行。
- 后端只为已启用模块读取所需汇总或历史数据,排行上限固定为 20,避免在低性能单核主控上产生无意义的 CPU、内存和磁盘压力。
- 修复监测告警概览中分类名称与数量在部分宽度下黏连的问题;保持原字号和字重,空间不足时按完整分类项换行,不牺牲文字可读性。
- 修复手机端仪表盘部分图表刻度与数值显示不完整的问题,优化小屏幕下的自适应布局。
- 后台语言和主题配色改为管理员账号级偏好,重新登录或更换设备后仍会自动恢复。
- 修复自定义 Head/Body HTML 可能因 PWA 缓存或静态页面入口而失效的问题;已保存的自定义内容会持续生效,只有管理员手动修改或清除后才会改变,无需手动清理浏览器缓存。
Agent 部署配置与在线下发
- 新增每台服务器独立的 Agent 部署配置记忆,更换设备或重新打开页面后仍会带出已保存的安装选项和输入内容。
- 采集间隔、流量重置日、包含/排除网卡、包含挂载点、内存缓存计入方式和 GPU 监控支持保存并在线下发;流量重置日与服务器账单设置保持同步。
- 禁用远程控制、忽略不安全证书、禁用自动更新、从网卡获取 IP、GitHub 代理、安装目录和服务名 7 项仅用于保存及生成重装指令,不允许远程下发。
- 配置状态按实际进度显示为「已保存」「已发送」「已生效」或「应用失败」;
- 同一离线节点只保留最新配置,避免恢复连接后重复应用旧修订,「已保存」”表示配置仅存入 Komari;可在线下发的配置:点“保存并下发”后会变为“已发送”,Agent 确认后变为“已生效”。
- Agent 会上报当前生效配置;未由 Komari 管理的节点可据此初始化,已保存的管理端配置不会被旧 Agent 状态反向覆盖。
- 升级后提示节点列表里提示「已保存」,实际配置已经生效,若要消除,需要修改配置重新下发然后再改回来再下发或重装一次,之后无需重复操作。目前已知版本更新需要人工介入处理部分。
- 完整配置上报、在线下发和结果确认建议配套 Agent
2.2.0.1或更高版本。
查询、内存与磁盘 IO
- 主库 SQLite 页缓存按宿主机物理内存和容器内存限制自适应,降低小规模实例的常驻内存,同时兼顾多节点环境。
- 没有待压缩数据的指标任务会在进入写路径前直接返回,不开启无效写事务、写入水位或执行后续清理。
- 历史指标和批量查询在存储层提前应用结果上限,减少重复解码、临时对象和无效数据搬运,改善低性能单核主控下的响应。
- 优化多指标图表点位渲染,减少多曲线场景中的常驻绘制节点,同时保留悬停查看能力。
- 已登录用户的后台资源改为空闲时预加载,避免阻塞大屏首屏内容;登录后可见内容仍在首次打开时正常展示。
- 本次不新增指标数据副本或持久化查询缓存,不改变用户现有的数据保留周期。
流量统计准确性
- 修复 Agent 重装、调整监测网卡或网卡计数器重置后,流量日报可能把新的累计总量误算为当日新增流量的问题。
- 加强累计流量连续性校验,避免网卡增加、移除、重建及短暂异常读数造成日报、周报或月报流量突增。
双端界面与远程执行
- 重做远程执行节点选择:电脑端使用列表,手机端使用卡片,并保留名称、地址、分组、备注和账单信息。
- 远程执行搜索支持按名称、地址、分组、备注和账单模糊匹配。
- 优化服务器列表和远程执行列表的电脑端列宽,窄窗口下优先保证名称、地址、分组和账单可读。
- 统一地址展示:仅有 IPv4 或 IPv6 时居中显示且不保留空行,双栈地址上下排列。
- 服务器列表独立展示 Agent 版本与配置状态,并继续针对手机端卡片做独立对齐和触控布局。
发布信息
- 正式版首次发布时间:2026-08-06 01:25(北京时间)
- Komari 构建号:
k2m8v7x
Docker
docker pull ghcr.io/nuomiiiii/komari:2.2.0docker pull ghcr.io/nuomiiiii/komari:latestLinux 一键安装
curl -fsSL https://raw.githubusercontent.com/nuomiiiii/komari/main/install-komari.sh -o install-komari.sh && chmod +x install-komari.sh && sudo ./install-komari.sh2.1.12
本版本重点改善长期运行后的数据库占用、查询响应和低性能主控下的稳定性,同时完善后台仪表盘、导航布局与远程终端体验。
第五次同版本更新
- 发包时间:2026-08-04 18:13(北京时间)
- Komari 构建号:
f2f37e0 - 优化指标存储日常 IO:SQLite 在没有过期数据时快速返回;没有过期记录的指标序列不再重复解码、重写或开启无效事务,降低磁盘读写与 CPU 消耗。
- 感谢上游 komari-monitor/komari。本次基于上游实现思路移植动态指标写入队列容量、单指标负载告警查询、RAM/Swap/磁盘容量来源修正、Ping Agent 排序与完整批量排序校验,并结合当前分支的数据模型、聚合语义和接口行为完成兼容调整。
- 继续统一电脑端与手机端后台 UI:电脑端使用高信息密度列表,手机端使用自适应卡片;统一服务器、延迟监测、回程线路、远程管理、通知告警、日志与设置页面的字号、间距、按钮、圆角、阴影、状态和分页布局。
- 服务器列表独立展示 Agent 版本并收紧行高,重新分配备注与账单宽度;修复从服务器名称打开详情时 IPv4 被默认聚焦或选中的问题。
- 新增全局“列表默认分页”设置,入口位于“系统设置 - 通用”,支持每页
10、50或100条,并同步应用到后台所有分页列表。 - 优化手机端设置页和状态标签布局,移除日志等页面的冗余摘要;回程线路监测分页移入列表框,手机端任务按钮保持同一行。
- 修复部分手机浏览器和已安装 Web App 无法连接远程终端的问题,并保持管理员会话与一次性票据校验,不降低远程会话安全性。
- 优化手机端远程终端的软键盘、英文输入、中文输入法组合文字和页面缩放行为;统一右键菜单“全选”图标,同时保持电脑端终端布局与输入行为不受影响。
- 修复 iPhone Safari 与移动端 Edge 中拖动远程终端会带动浏览器页面的问题;触控拖动现在只滚动终端历史记录,轻触仍可正常聚焦输入。
第四次同版本更新
- 发包时间:2026-08-03 15:35(北京时间)
- Komari 构建号:
f1f4b78 - 全面优化后台电脑端与手机端 UI;双端采用不同的信息布局,电脑端使用列表,手机端使用自适应卡片,分别兼顾信息密度与触控可读性。
- 统一节点列表、延迟监测、回程线路、远程执行、通知与告警等页面的字号、间距、按钮、分页和移动端卡片交互。
- 修复手机端最后一张卡片与分页分隔线黏连的问题。
- 仪表盘新增回程线路监测信息;未配置或当前无任务时显示“暂无正在执行的回程线路监测任务”。
第三次同版本更新
- 发包时间:2026-08-03 00:27(北京时间)
- Komari 构建号:
29e6d98 - 修复手机端刷新管理页面时侧边栏会短暂显示后再收回的问题,移动端首次渲染即可正确识别屏幕宽度,不影响电脑端侧边栏状态。
- 优化电脑端和手机端版本入口的主题色、尺寸与对齐方式,手机端继续使用保留正文可见的半遮盖导航布局。
第二次同版本更新
- 发包时间:2026-08-02 21:37(北京时间)
- Komari 构建号:
5cb6d0d - 新增内置 HTTPS,可从服务器证书路径读取证书,支持 IPv4/IPv6 监听、HTTP 自动跳转 HTTPS 与 HSTS;反向代理、内置 HTTPS 和 Cloudflare Tunnel 的设置入口重新整理。
- 完整备份与恢复已适配当前数据库结构并保留历史监测数据,同时新增“仅导出配置”,兼容当前分支、旧版本和上游现有结构的迁移。
- 服务器支持手动修正国家或地区、设置重置流量额度以及校准当前计费周期流量;仪表盘、公共主题接口、流量告警、日报、周报和月报统一采用校准后的统计结果,并在下一个流量重置日自动清零校准差额。
- 改进多标签页连续打开不同服务器远程终端时的会话管理,兼容 Cloudflare、反向代理、两步验证和离线节点;文件管理已有批量选择增加右键下载,Agent 拒绝等提示补齐中文。
- 独立登录页、后台入口、主题管理与升级弹窗统一界面和交互,修复重复加载、主题切换衔接和 GitHub Markdown 更新内容显示问题。
第一次同版本更新
- 发包时间:2026-07-31 22:28(北京时间)
- 修复全丢包 Ping 历史桶因没有有效延迟摘要而无法继续分层接力的问题。
- 改为按桶内实际采样总数与丢包数判断,只有整桶全部丢包时才允许无延迟摘要接力;只要存在一条有效延迟,摘要缺失仍会严格拦截并保留原数据。
数据库存储优化
实测占用对比
| 对比版本 | 同一份已填满 7 天数据的实际样本 | 变化 |
|---|---|---|
Komari 2.1.11 正式版(构建 3faffcd) |
21.84 MiB | 对比基线 |
Komari 2.1.12 正式版 |
18.81 MiB | 减少 3.03 MiB,约 13.9% |
以上数据来自同一份数据库升级前后的实际对比,不是按理论模型估算;服务器数量、探测任务、数据波动和保留周期不同,实际缩减比例也会有所变化。官方 1.3.2 主要优化了部分告警查询和批处理内存分配,未改变数据库存储格式,也没有可直接对照的官方缩减数据,因此不虚构百分比。
- 高效存储,无损精准:引入新一代无损摘要编码技术,在大幅减少历史数据冗余占用的同时,确保监控数据精度丝毫未减。
- 架构精简,无缝兼容:统一了延迟与丢包数据的底层存储结构,消除了同一探测任务的重复记录。更重要的是,本次优化对上层完全透明,原有接口与数据提取方式均保持不变。
- 真正的分层生命周期管理:告别过去长期堆砌不同精度数据的旧状,历史数据现在实现了真正的分层接力。原始采样、分钟级、五分钟级及小时级数据将依据保留规则逐层流转与交接。
- 配置智能迁移:新版本已统一启用数据降采样,并移除了旧有的低资源模式。升级过程中,系统会自动兼容并处理旧版本中的相关配置,保障平滑过渡。
数据库性能与低性能主控
- 历史查询改为按页面实际需要读取数据,延迟统计通过一次读取统一生成,减少大数据库下的重复扫描和等待。
- 根据主控可用内存、CPU 核心数和容器资源限制自动调整数据库缓存与查询并发,兼顾 512 MiB、单核设备、ARM64 慢速主控和普通多核服务器。
- 历史压缩与数据接力改为分批执行,每批完成后主动让实时监控数据优先写入,避免维护任务长时间占用数据库。
- 已经形成的历史数据堆积会从保存位置自动继续处理;每批成功后才清理对应旧数据,失败只回滚当前批次,不需要清库或重新迁移。
- WAL 维护采用短时快速尝试和定期完整重试,失败时保留已经提交的数据与完整 WAL,避免慢速磁盘反复长时间阻塞。
- 空间回收改为分批执行;手动回收在数据库繁忙时会等待当前任务完成,不再直接失败。
- 数据库页面会按实际执行时间更新压缩、截断和下一次维护状态,不再显示已经过期的预计时间。
后台仪表盘与加载体验
- 新增后台仪表盘并设为管理端默认首页,可集中查看服务器在线率、离线节点、今日实时上传与下载、今日计费流量、最近一个月每日计费流量和数据库文件组成。
- 只有设置了价格的服务器才计入计费流量;免费或未设置价格的服务器仍统计上传与下载,但不计入计费汇总。日报、周报和月报采用相同口径。
- 仪表盘汇总结果缓存 15 秒,减少频繁刷新带来的数据库压力。
远程终端
- 改进连续打开多个远程终端时的连接管理,自动清理残留连接并识别失效会话,避免前几个终端正常、后续终端无法打开。
- 修复 PWA 图标重复缓存冲突,兼容 Cloudflare Tunnel、Docker 和常见反向代理环境下的 WebSocket 校验。
- 从服务器列表进入终端时使用轻量状态请求,不再额外建立容易被反向代理拒绝的旧状态连接。
- 所选节点会保留在终端页面地址中,刷新、两步验证、连续打开、多标签页及离线节点场景下都不会丢失或串到其他服务器;节点信息不会发送给 Cloudflare、反向代理或服务端。
后台界面整理
- 重整后台导航,将监测、远程管理、通知与告警、外观与主题、系统设置、账户与安全按用途归类。
- 数据库功能统一收纳到“数据与存储”,通过“存储概览、监控数据、迁移与维护”集中查看容量、配置、迁移进度和空间维护。
- 统一仪表盘、服务器、监测、回程监测、远程管理、通知、主题、设置、日志、关于、账户、登录、会话管理和流量报告的标题字号、间距与页面布局。
- 收窄电脑端侧边栏并减少多余留白,手机端保留合适的触控区域,同时优化菜单、页签、数据库信息和长列表布局。
- 默认主题设置补齐简体中文、繁体中文、英文、日文和印尼文显示,切换后台语言后不再混用其他语言。
升级迁移与数据安全
- 兼容上游旧版本、上游
1.3.1、1.3.2,以及 Komari2.1.7至2.1.11的数据库升级。 - 数据库结构升级统一通过迁移页面展示当前阶段、处理进度和错误信息,迁移失败会完整回滚并保留原数据。
- 保留用户原有的数据保留天数、查询接口、历史数据精度和持久化设置,升级后无需重新配置监控任务。
- 压缩、分层接力、WAL 截断或空间回收失败时不会删除尚未安全接力的数据,后续会在条件满足后继续处理。
发布信息
- 正式版首次发布时间:2026-07-31 20:54(北京时间)
Docker
docker pull ghcr.io/nuomiiiii/komari:2.1.12docker pull ghcr.io/nuomiiiii/komari:latestLinux 一键安装
curl -fsSL https://raw.githubusercontent.com/nuomiiiii/komari/main/install-komari.sh -o install-komari.sh && chmod +x install-komari.sh && sudo ./install-komari.sh2.1.11
第 3 次同版本更新
- 完成时间:2026-07-29 23:10(北京时间)
- 构建标识:d3lmnwx
- 进一步加快后台进入速度,统一后台启动加载画面,解决登录、刷新和进入管理页面时连续出现多个加载圈的问题。
- 优化双栈通知连接:IPv6 保持优先,约 300ms 内未连通时并行尝试 IPv4,减少双栈环境下通知等待时间,同时保持纯 IPv6 支持。
第 2 次同版本更新
- 完成时间:2026-07-29 21:45(北京时间)
- 构建标识:uyfm5j4
- 支持从上游 Komari
1.3.1直接升级。首次启动会进入数据库迁移页面,迁移期间保留原有指标、历史汇总、百分位摘要和数据保留周期;异常时回滚并保留原库,不会带着不完整数据继续启动。 - 合并上游新功能:Webhook 与自定义脚本通知新增纯 IPv6 / 双栈目标兼容。双栈环境优先尝试 IPv6,不可用时继续回退 IPv4。
第 1 次同版本更新
- 完成时间:2026-07-29 20:57(北京时间)
- 构建标识:24eac84
- 修复编辑回程线路监测任务时,后台定时刷新覆盖任务名称、目标 IP 等尚未保存内容的问题。
- 后台登录体验优化:未登录时不加载后台框架及相关设置,统一账户状态管理,可在登录成功后无刷新进入后台。
2.1.11 主要更新
- 首发回程线路监测:可按节点、运营商、地区和预期线路配置探测任务,自动识别线路切换与恢复。
- 精品线路识别:支持 CMIN2、CMI、CMNET、CN2 GIA、CN2 GT、163、CUG VIP(10099+9929)、CUG 优化(10099+4837)、9929、4837 等常见线路。
- 规则库热更新:本地骨干特征与有序路径判断结合 Cymru、RIPEstat、BGPView 按需回退;BGPtools 数据由 GitHub 定时整理,主控自动下载并热加载。
- 监测记录与通知:任务和记录分开展示,支持搜索、筛选和分页;记录保留 ASN 与探测路径,可按确认次数和冷却时间发送切线、恢复通知。
- Agent 版本兼容:支持后续四段 Agent 版本号的比较、更新和显示。
- SQLite V4 指标存储:使用更紧凑的无损编码和分批维护,降低低性能设备上的数据库占用与瞬时 CPU 压力。
- 远程管理:提供多标签 Web 终端、文件管理和远程任务,包含 systemd 更新校验、冷备份、健康检查与失败回退。
升级说明
升级前请备份完整 data 目录,并保持原有数据挂载和持久化设置不变。上游 1.3.1 用户首次启动新版本时,请等待迁移页面明确显示完成,不要中途结束进程。
Docker 用户可拉取:
docker pull ghcr.io/nuomiiiii/komari:2.1.11完整附件、SHA-256 校验文件和自动更新清单见本页 Assets。
2.1.10
2.1.10 更新内容
数据库占用显著降低
- 重新优化历史监控数据的保存方式,减少重复存储,更适合长期运行和低配置服务器。
- 在相同四节点、相同监控指标和相同持久化设置下,指标主库从
2.1.8的约 44.16 MiB 降至2.1.10的约 20.0~20.1 MiB,降低约 54%~55%。 - 本次优化不会减少监控项目、缩短保留时间或降低数据精度,用户原有的指标持久化天数也会保持不变。
- 数据库更小后,日常备份、迁移和低配服务器长期运行的压力会相应降低。
上述数据来自四台节点、1 分钟数据约 48 小时及 5 分钟数据约 7 天的实测指标主库。实际占用会随节点数量、启用指标、采集频率和保留周期变化。
数据库迁移与兼容
- 新增 Web 数据库迁移页面,从旧版本首次升级时可直接查看迁移阶段、总体进度、已处理数据量、延后处理数量和空间回收状态。
- 迁移会分批执行;遇到暂时无法安全转换的历史数据时会保留原数据并自动重试,不再因单条历史记录阻断 Komari 启动。
- 支持从上游
1.2.5、1.2.7、1.2.8、1.2.8-fix、1.3.0,以及自有2.1.7 V3、2.1.8、2.1.8-fix、2.1.9升级迁移。 - 升级后继续沿用原有指标持久化天数,不会自动恢复为默认值;外置数据库不会进入 SQLite 指标库迁移。
数据库运行状态
- 后台“运行状态”新增数据库压缩周期、最近成功时间、迁移进度、失败次数及自动重试项目。
- 摘要接力暂缓等情况会在网页显示具体发生时间和中文原因,同时继续保留服务端日志,方便排查。
- 已确认无法恢复的旧数据会静默跳过,不再反复提示,也不会影响后续正常数据处理。
其他更新
- 恢复后台反向代理设置页面及内置 Cloudflare Tunnel 配置能力。
- 公共 Ping 任务新增
weight权重字段。 - 更新 Komari 默认 Logo 和 favicon。
- 完善数据库异常保护,避免历史数据问题阻断服务启动。
部署
升级前建议完整备份 Komari 的 data 目录。首次升级进入数据库迁移页面后,请不要强制结束进程或反复重启容器;旧格式占用会在迁移和空间回收完成后逐步释放。
Docker
docker pull ghcr.io/nuomiiiii/komari:2.1.10
Docker 镜像支持 Linux amd64 和 arm64。重建容器时请保持原有端口、环境变量和 data 挂载不变。
Linux 一键安装
curl -fsSL https://raw.githubusercontent.com/nuomiiiii/komari/main/install-komari.sh -o install-komari.sh && chmod +x install-komari.sh && sudo ./install-komari.sh
正式版同时提供 Windows 和 Linux 多架构二进制附件。
致谢
本项目基于开源项目 komari-monitor/komari 开发和维护,感谢上游作者及所有参与开发、测试和问题反馈的用户。
2.1.9
2.1.9 更新内容
- 指标库采用新的无损 digest 编码,在不降低指标精度、百分位精度和累计流量精度的前提下降低数据库占用。
- 启用分层 digest 接力。
- 压缩与迁移按固定时间分片执行并支持中断续跑,降低低配服务器长事务和 WAL 波动。
- 新增数据库迁移进度页面,启动阶段可直接查看当前阶段、进度和已处理数据量。
- 兼容从上游 1.1.x、1.2.x、1.3.x、Komari 2.1.x V3 及早期 V4 指标库升级,并保留用户原有的指标持久化天数。
- 修复部分由早期 2.1.8-fix 或边界迁移状态升级时,因
cannot losslessly hand off digest导致指标库初始化失败、Komari 无法启动的问题。 - 当历史细分层覆盖不足、无法无损重建粗分层 digest 时,本轮迁移会保留原汇总块并延期接力,不再阻断服务启动;后续满足条件时会继续处理。
2.1.9 同版本第 2 次更新(北京时间 2026-07-28 03:06)
- 修复从完整 V4 指标库升级至 2.1.9 时未进入迁移进度页的问题;首次升级现在会显示 digest 分层接力进度,完成后持久记录迁移状态,后续启动不会重复进入。
- 完善 V4 迁移收尾与自动回收模式切换;迁移失败仍可在进度页重试,不修改原有指标持久化天数,也不改变原始指标、累计流量或百分位精度。
- 已覆盖上游 1.1.x、1.2.5、1.2.5-fix2、1.2.6、1.2.7、1.3.0,1.2.8 普通版、1.2.8-fix,以及自有 2.1.x V3、2.1.8、2.1.8-fix 的数据库升级路径。
- 修复边界 digest 数据无法无损接力时阻断服务启动的问题;无法安全接力的历史块会原样保留,并在条件满足后继续处理。
部署
Docker
docker pull ghcr.io/nuomiiiii/komari:2.1.9
Docker 镜像支持 Linux amd64 和 arm64。
Linux 一键安装
curl -fsSL https://raw.githubusercontent.com/nuomiiiii/komari/main/install-komari.sh -o install-komari.sh && chmod +x install-komari.sh && sudo ./install-komari.sh
2.1.8
重要提示
Important
**2.1.7 上游删除数据 BUG:**上游删除服务器或延迟监测任务时,可能遗留相关配置、告警、任务结果和历史指标。本次更新后首次启动会自动清理这些遗留数据。升级并确认 Komari 正常启动后,建议先备份 data 目录,再在业务低峰期进入后台数据库管理手动执行一次“回收空间”,将清理后产生的空闲数据库页归还给磁盘。回收期间可能短暂增加 CPU 和磁盘占用,但不会删除保留周期内的有效数据。
Important
**2.1.7 SQLite V3/V4 迁移提示:**指标库迁移涉及本地 SQLite 结构调整,建议手动更新。迁移期间请保持服务运行,不要强制停止进程。当前版本兼容上游 1.1.x、1.2.x、1.3.x 旧结构、2.1.x V3 结构以及早期 V4 结构,并会在校验失败时保留原结构、回滚本次迁移。该自动转换仅适用于本地 SQLite;外置 MySQL/PostgreSQL 不执行 SQLite V3/V4 转换。
Important
**2.1.6 Agent Token 安全修复:**请先升级 Komari Server/Web,再升级 Agent;升级完成后按节点顺序重置 Agent Token,并在 24 小时内完成全部节点的 Token 重置。
2.1.8 同版本第 3 次更新
更新时间:2026-07-27 13:57:57(北京时间)
- 同步上游最新快照,更新公共 Ping 任务 API 新增
weight字段,保持向后兼容,主题和其他客户端可读取任务权重进行排序或加权分发。 - Favicon 响应禁止浏览器继续使用旧缓存,后台上传或恢复默认图标后会立即刷新当前预览和浏览器标签页图标,修复自定义图标生效慢的问题。
- “恢复默认 Favicon”改为可重复执行,即使当前没有自定义图标也会正常恢复默认状态。
2.1.8 同版本第 2 次更新
更新时间:2026-07-27 13:14:30(北京时间)
- 将 Komari 默认网页图标、站点图标与 PWA 图标统一替换为新版透明底 Komari Logo。
- 回归上游 1.2.6 移除的内置 Cloudflare Tunnel,恢复后台“反向代理”设置页面及 Tunnel 配置入口。
- 支持保存或移除 Cloudflare Tunnel Token,并展示运行状态、启动、停止和运行日志;已配置的 Tunnel 会在 Komari 重启后自动恢复运行。
- Cloudflare Tunnel Token 使用加密配置保存,通用设置接口不会返回明文或加密后的 Token 内容,相关管理操作写入审计记录。
- Docker 镜像按系统架构内置匹配的
cloudflared,无需在容器中另行安装。
2.1.8 同版本第 1 次更新
更新时间:2026-07-26 17:26:43(北京时间)
- 数据库维护区域新增“运行状态”,每 10 秒自动刷新指标压缩与 SQLite WAL 检查点状态。
- 展示当前指标、压缩进度、本轮汇总桶数量、运行临时文件、最近成功截断时间和预计下次截断时间。
- 统一运行临时文件统计口径,上方概览和下方运行状态均按
WAL + SHM显示,并提供 WAL、SHM 明细。 - SQLite checkpoint 失败后自动重试;连续失败 1~2 次显示“等待截断”,连续失败 3 次或压缩周期连续失败 2 轮显示“需要关注”。
- 异常状态展示最近错误;checkpoint 恢复成功后自动清除失败次数和错误信息。
- 精简正常状态文案为“正常”,并完成桌面端与移动端布局适配。
- 运行状态仅保存在内存中,不新增数据库表、不额外执行 checkpoint,也不会改变数据精度和现有压缩周期。
2.1.8 更新内容
- 汇总历史压缩优化,在低配置单核设备上降低压缩处理开销,同时继续压缩历史数据。
- 完善 SQLite V3/V4 迁移:逐点校验原始数据、保留浮点数位级精度,迁移失败自动回滚并保留原数据结构。
- 增加旧 digest 迁移数量提示,便于升级时确认迁移范围。
- 保留百分位查询能力,不降低指标和流量账本的数据精度。
Bug 修复
- 修复 digest 迁移校验不完整时可能继续提交的问题。
- 修复 SQLite 迁移遇到异常数据时无法安全回退的问题。
- 修复旧 V3 数据迁移后继续写入、压缩和查询的兼容性问题。
部署
Docker
docker pull ghcr.io/nuomiiiii/komari:2.1.8Docker 镜像支持 Linux amd64 和 arm64。
Linux 一键安装
curl -fsSL https://raw.githubusercontent.com/nuomiiiii/komari/main/install-komari.sh -o install-komari.sh
chmod +x install-komari.sh
sudo ./install-komari.sh2.1.7
Important
【本次同版本更新后建议操作】
上游版本的删除逻辑存在缺陷:删除服务器或延迟监测任务时,可能未完整清理关联配置、告警、任务结果及历史指标,从而产生数据残留。本次更新已修复该上游问题,并会在首次启动时自动清理已有残留。升级并确认 Komari 正常启动后,建议先备份 data 目录,再于业务低峰期进入后台数据库管理,手动执行一次“回收空间”,将已清理数据占用的空闲数据库页归还给磁盘。该操作不会删除保留周期内的有效数据,但执行期间可能短暂增加 CPU 和磁盘 I/O 占用。
Important
【建议手动更新】
2.1.7 涉及监控数据库由旧结构迁移至 SQLite V4 块存储。首次启动会自动进入独立的迁移进度页面,迁移完成并校验通过后才会开放正常页面。建议升级前备份整个 data 目录,停止旧版 Komari 后再手动更新;迁移期间不要强制停止进程或容器。迁移失败会回滚并保留原有数据,可在进度页面查看原因并重试。外置 MySQL/PostgreSQL 不参与 SQLite V4 迁移。
Important
【必须操作】
2.1.6 是针对上游 Agent 通信机制遗留 Bug 的安全修复。升级后,请在每个节点点击“重置 Token”后的 24 小时内重新安装/部署对应 Agent。请先升级 Komari Server/Web 2.1.6 或更高版本,再升级 Agent 2.1.61 或更高版本,最后在后台逐个重置节点 Token;重新执行更新后的部署指令即可,无需先手动卸载,节点和历史监控数据不会删除。仅等待 Agent 自动更新不够,因为自动更新不会修改服务或容器中的 Token。新 Token 首次成功连接后,旧 Token 会立即失效。
安全隐患: 上游旧通信机制曾把真正具备认证能力的 Agent Token 放在 URL 查询参数中,可能被反向代理访问日志、网关日志或故障采集系统记录;旧 V1 上报还曾优先信任正文中的 UUID。Token 一旦泄露,攻击者可冒充对应 Agent、伪造监控和任务结果、占用节点连接,并截获 Server 待下发的探测、配置或远程任务。
主要更新内容
- 新增 SQLite V4 迁移进度页面。启动检测到旧指标库后会进入受限迁移模式,完成身份验证后可查看阶段、进度、数据量和耗时;失败可直接重试,成功后自动进入 Komari。
- 完善从上游
1.1.x、1.2.x、1.3.x及本分支 SQLite V3 升级至 V4 的兼容处理。迁移在事务内执行并校验数据量,失败自动回滚,不会保留半迁移状态。 - 恢复低资源模式设置,默认关闭。启用或关闭后的状态会持久保存,后续启动不会重新自动判定或覆盖用户选择。
- 新增独立的精确每日流量账本。日报、周报和月报分别按 2 天、8 天、35 天保留,多个周期同时启用时取最长周期,关闭全部报告后自动清理账本。
- 定时日报、周报和月报改为读取北京时间完整自然日账本;“立即发送日报”继续统计当天
00:00至点击时刻的实时数据。 - 保留
traffic.up、traffic.down、net.total.up、net.total.down的通用查询及 P70/P95/P99 能力。历史回填逐字节校验成功后,才会恢复旧版自动提升的 8/35 天指标保留期;管理员设置的其他更长周期不会被缩短。 - V4 后台维护继续按 21 类指标分步执行,并在首次流量账本回填完成后再启动压缩,降低低性能单核服务器启动时的 CPU 和磁盘争用。
- 优化后台数据库占用展示,分别显示数据库文件、WAL/SHM 运行临时文件与实际磁盘占用;运行临时文件会随写入和 SQLite 自动检查点正常波动,不代表执行了“回收空间”。
- 重排数据库维护占用明细,以紧凑表格横向对比主数据库和监控数据库的数据库文件、运行临时文件与总占用;标题区仅保留简洁的“合计”,移除重复标题,窄屏自动改为纵向排列。
Bug 修复
- 修复删除服务器后仍残留流量报告、离线通知、延迟告警、负载告警、命令任务结果、流量账本和历史监控数据的问题;共享规则只移除被删除服务器,不影响其他服务器。
- 修复删除延迟监测任务后,对应告警规则、旧表记录和指标库历史数据没有同步删除的问题。
- 启动时自动清理旧版本已经产生的孤立服务器数据、无效任务引用和空指标序列,并阻止在途上报、排队事件或旧连接重新生成已删除数据。
- 修复旧数据库首次迁移时可能出现的汇总重复、查询空档、时间桶边界越界以及迁移等待超时问题。
- 修复 SQLite WAL 检查点暂时被读取占用时仅执行一次的问题;现在会自动延迟重试,避免 WAL 长时间未回收。
- 优化迁移页面在窄屏和大数值情况下的布局,避免进度信息被裁切或撑破容器。
发布与兼容性
- 程序内版本为
2.1.7 (jftc7ck);Git 标签、GitHub Release 标题和 Docker 标签仅使用2.1.7。 - Docker 镜像提供
linux/amd64与linux/arm64,并同步更新latest。 - 继续兼容 2.1.6 的安全 Token 迁移流程;尚未完成 Token 重置和 Agent 重装的节点仍须按顶部提示处理。
Docker 拉取
docker pull ghcr.io/nuomiiiii/komari:2.1.7Linux 一键安装
curl -fsSL https://raw.githubusercontent.com/nuomiiiii/komari/main/install-komari.sh -o install-komari.sh
chmod +x install-komari.sh
sudo ./install-komari.sh完整变更记录:2.1.6...2.1.7
2.1.6
Important
【必须操作】
2.1.6 是针对上游 Agent 通信机制遗留 Bug 的安全修复。升级后,请在每个节点点击“重置 Token”后的 24 小时内重新安装/部署对应 Agent。请先升级 Komari Server/Web 2.1.6,再升级 Agent 2.1.61,最后在后台逐个重置节点 Token;重新执行更新后的部署指令即可,无需先手动卸载,节点和历史监控数据不会删除。仅等待 Agent 自动更新不够,因为自动更新不会修改服务或容器中的 Token。新 Token 首次成功连接后,旧 Token 会立即失效。
安全隐患:上游旧通信机制曾把真正具备认证能力的 Agent Token 放在 URL 查询参数中,可能被反向代理访问日志、网关日志或故障采集系统记录;旧 V1 上报还曾优先信任正文中的 UUID。Token 一旦泄露,攻击者可冒充对应 Agent、伪造监控和任务结果、占用节点连接,并截获 Server 待下发的探测、配置或远程任务。
2.1.6 安全修复
- Agent 的主 WebSocket、V2 POST 回退、基础信息、探测结果、任务结果、旧终端和新远程管理全部改用
Authorization: Bearer请求头,不再把 Agent Token 写入公网 URL。 - Server 的 V1/V2 上报、基础信息和控制连接统一以 Token 认证后得到的节点身份为准,忽略上报正文伪造的 UUID,阻止持有任意节点 Token 后跨节点注入数据。
- 远程管理页面固定使用
/terminal,节点 UUID 通过新窗口的一次性会话存储传递并立即删除;远程会话 ID 改由 WebSocket 首帧或专用请求头传递,不再进入浏览器历史、Referer 和代理 URL 日志。 - 新增节点 Token 安全重置:新旧 Token 最多并存 24 小时,新 Token 首次认证后自动撤销旧 Token;过渡期内重复重置时提供明确中文提示。
- 节点列表重置入口默认只显示图标,悬停时展示“重置 Token”,避免操作区拥挤。
2.1.6 远程管理完善
- 手机端新增命令输入栏并支持中文输入法;远程标签支持拖动排序,命令剪贴板编辑不再被定时刷新重置。
- 修复手机端缩放后无法拖动,以及拖动终端时被误判为点击并弹出键盘的问题。
- 修复 iPhone 等手机首次打开远程终端时页面被自动放大的问题;移动端终端字号和内边距使用紧凑上限,命令输入保持 16px 以阻止 iOS Safari 聚焦缩放,桌面端自定义设置保持不变。
- 文件管理新增右键新建、复制、粘贴、重命名、删除,以及单击、Ctrl/Command、Shift 和拖动框选多选。
- 修复启用拖动框选后双击文件夹无法进入的问题。
- Server 与 Agent 新增
file.copy,支持文件和目录复制,并记录远程操作审计。。 - 统一桌面终端滚动条,移除重复滚动条;修复手机端终端最下面一行被命令输入栏遮挡。
- 修复终端连接反复重建、命令输入被打断,以及新建标签尺寸不一致的问题。
2.1.6 更新与兼容性修复
- 修复部分旧版 systemd 的
systemd-run不支持--no-block,导致 Komari 自动更新报错的问题;仅在确认该参数不受支持时自动降级重试,其他启动失败仍原样返回。 - 兼容 CentOS 7.6 / systemd 219 等旧环境不接受
Restart/RestartSec临时单元属性的情况;不按系统版本硬编码,仅在返回未知、不支持或无效 assignment/property 的同类错误时去掉这两个可选参数重试,权限、路径、总线等其他故障不会被掩盖。 - Agent 2.1.61 修复稳定版自动更新,固定从
nuomiiiii/komari-agent选择最高稳定版本和当前架构文件;Release 文件尚未构建完成时 15 分钟后重试。
2.1.5 主要更新内容
- 新增安全远程管理入口,管理员可以在 Web 页面直接连接 Agent 终端,并在同一窗口通过标签页同时管理多台服务器;同一服务器也可复制为多个独立会话。
- 新增完整文件管理,支持目录浏览、新建、重命名、递归删除、批量上传、拖拽上传、覆盖确认和下载。
- 远程会话使用一次性浏览器票据与 Agent 票据,票据有效期 45 秒,并绑定管理员账号、登录 Session、目标节点和同源 WebSocket;单次会话最长 2 小时。
- 首次进入远程管理时会先完成 2FA 验证,再打开终端工作区;通过后 10 分钟内复用验证结果。
发布与兼容性
- 程序内版本为 2.1.6 (u21eqa2);Git 标签、GitHub Release 标题和 Docker 标签仅使用 2.1.6。
- Docker 镜像提供 linux/amd64 与 linux/arm64,并同步更新 latest。
Docker 拉取
docker pull ghcr.io/nuomiiiii/komari:2.1.6
Linux 一键安装
curl -fsSL https://raw.githubusercontent.com/nuomiiiii/komari/main/install-komari.sh -o install-komari.sh
chmod +x install-komari.sh
sudo ./install-komari.sh
完整变更记录:2.1.5...2.1.6