scanoss-engine 本地最简部署 扫描命令(Linux/Anolis OS) 📅 2026/8/5 2:50:11 目录一、环境准备1. 依赖安装2. 下载编译 scanoss-engine二、下载开源指纹库 OSSKB核心数据库三、基础扫描命令方式 1直接扫描本地代码目录最简方式 2指纹比对库输出扫描结果 json四、配套 scanoss-py 工具推荐简化全流程五、Docker 一键部署无编译生产推荐 Anolis OS六、常用参数说明七、CI 集成示例Jenkins/GitLab CI一、环境准备1. 依赖安装# CentOS/Anolis 8/9 yum install git gcc make unzip wget -y # Ubuntu/Debian apt update apt install git gcc make unzip wget -y2. 下载编译 scanoss-engine# 拉取源码 git clone https://github.com/scanoss/engine.git cd engine # 编译引擎二进制文件 make编译完成后目录下出现scanoss-engine可执行文件。二、下载开源指纹库 OSSKB核心数据库# 创建库存放目录 mkdir -p ~/.scanoss/ldb cd ~/.scanoss/ldb # 下载最新轻量指纹库国内下载慢可加代理 wget https://scanoss.com/files/ldb/scanoss-latest.ldb.zip unzip scanoss-latest.ldb.zip三、基础扫描命令方式 1直接扫描本地代码目录最简# 回到engine编译目录 cd ~/engine # 语法./scanoss-engine -wfp 输出指纹文件 -scan 代码目录 ./scanoss-engine -wfp output.wfp -scan /你的项目源码路径执行完毕生成output.wfp指纹文件。方式 2指纹比对库输出扫描结果 json./scanoss-engine -ldb ~/.scanoss/ldb -wfp output.wfp -out scan_result.json四、配套 scanoss-py 工具推荐简化全流程engine 仅底层内核日常扫描、导出 SBOM 用 python 封装工具更方便# 安装scanoss-py pip install scanoss # 一键扫描项目直接输出结果内置调用scanoss-engine scanoss /你的源码目录 --output sbom_result.json --format spdx五、Docker 一键部署无编译生产推荐 Anolis OS无需本地编译引擎直接容器运行# 拉取官方镜像 docker pull scanoss/scanoss-engine # 启动容器扫描本地代码 docker run -v /本地源码目录:/src -v ~/.scanoss/ldb:/ldb scanoss/scanoss-engine \ -ldb /ldb -scan /src -out /src/scan_report.json六、常用参数说明-wfp 指定指纹文件路径 -scan 待扫描源码目录 -ldb 指纹数据库目录 -out 输出报告json路径 -quiet 静默输出屏蔽日志 -threads 扫描并发线程数例-threads 8七、CI 集成示例Jenkins/GitLab CI# 流水线步骤命令 scanoss ./ --format cyclonedx --output bom.json # 检测高风险开源组件阻断流水线 grep -i GPL bom.json exit 1