You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Trivy镜像扫描完成后未输出结果汇总的问题求助

问题原因及解决办法

核心原因

Trivy的漏洞汇总统计仅在成功扫描到OS漏洞或语言依赖漏洞时才会输出。你的扫描日志显示两个关键问题:

  1. OS未被识别:日志中OS is not detected. Detected OS: unknown,说明Trivy无法识别镜像的Alpine系统,跳过了OS漏洞扫描。
  2. Go二进制无版本信息:日志中[gobinary] Skipping vulnerability scan as no version is detected for the package,说明Trivy无法从你的Go程序二进制文件中提取依赖版本,跳过了语言依赖漏洞扫描。

两项扫描都无有效结果,因此不会生成汇总行。

解决步骤

1. 修复OS识别问题

Trivy通过镜像内的/etc/os-release、/etc/alpine-release等文件识别Alpine系统。检查你的Dockerfile:

  • 如果构建过程中删除了这些文件,需保留它们;
  • 若必须清理,可强制指定OS类型让Trivy扫描:
    trivy image --os alpine xray-docker-1.21.11
    

2. 修复Go二进制版本检测问题

Trivy需要Go二进制包含模块版本元数据才能扫描依赖漏洞。调整Go构建命令:

  • 避免使用-ldflags="-s -w"完全剥离符号表(会丢失版本信息),可改为保留必要元数据:
    go build -ldflags="-buildvcs=false"
    
  • 或者单独生成依赖清单文件,让Trivy扫描该文件补充结果:
    go list -m all > go.mod.deps
    trivy image xray-docker-1.21.11 --dependency-files go.mod.deps
    

3. 验证正常模式输出

先去掉debug模式(-d参数),执行标准扫描命令看结果:

trivy image xray-docker-1.21.11

内容的提问来源于stack exchange,提问作者Dileep17

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.22 05:25:15