技术文档 | 免下载、0配置、多任务并发,在Docker Image中使用OpenSCA

简介: 点击解锁新用法

想跳过下载步骤快速使用OpenSCA检测代码风险?想实现多个项目并发扫描?

在Docker Image中使用OpenSCA即可轻松实现。一起来look look

目的

  • 方便用户使用最新版本的 OpenSCA-cli

  • 保证环境的一致性,消除不同操作系统对结果的影响

  • 可以方便在本地维护不同版本的 OpenSCA-cli

  • 方便在特定情况下并发扫描的需求

使用方法

命令行传参方式使用

检测当前目录的依赖关系

docker run -ti --rm -v $(PWD):/src opensca/opensca-cli

使用云端数据库检测漏洞

docker run -ti --rm -v $(PWD):/src opensca/opensca-cli -token xxxx

使用本地数据库检测漏洞

docker run -ti --rm -v $(PWD):/src -v /localDB:/data opensca/opensca-cli -db /data/db.json

检查依赖关系并生成 SBOM

docker run -ti --rm -v $(PWD):/src opensca/opensca-cli -out /src/output.spdx

配置文件方式使用

OpenSCA-cli Docker 镜像默认从当前 /src 目录查找 config.json 配置文件,因此若希望对每一个项目进行单独配置,只需在不同项目的根目录维护配置文件即可。

例如如下目录结构:

.
├── LICENSE
├── README.md
├── config.json
├── pom.xml
├── src
│   ├── config
│   └── main
├── testfiles
│   └── ...
└── tools
    └── ...

config.json 内容

{
   
  "path": "/src",
  "out": "/src/output.spdx",
  "vuln": true,
  "dedup": true,
  "progress": true,
  "url": "https://opensca.xmirror.cn",
  "token": "xxxx-xxxx-xxxx-xxxx",

  "origin": {
   
    "": {
    
      "dsn": "" 
    }
  },

  "maven": [
    {
   
      "repo": "",
      "user": "",
      "password": ""
    }
  ]
}

完成配置后,后续扫描无需修改命令,只需修改配置文件即可,方便在 CI/CD 的 Pipeline 中使用:

docker run -ti --rm -v $(PWD):/src opensca/opensca-cli

升级 OpenSCA-cli 镜像

可在引用时追加版本号,例如

docker run -ti --rm -v $(PWD):/src opensca/opensca-cli:v1.0.13

或者使用 pull 命令获取最新镜像

docker pull opensca/opensca-cli:latest
docker run -ti --rm -v $(PWD):/src opensca/opensca-cli

开源安全共建

感谢每一位开源社区成员对OpenSCA的支持和贡献。OpenSCA的代码会在GitHub和Gitee持续迭代,欢迎Star和Fork,也欢迎向我们提交ISSUE和PR,参与我们的开源安全共建计划,与社区成员共同建设充满可能性的开源解决方案。

相关文章
kde
|
2月前
|
Kubernetes 关系型数据库 文件存储
手把手教你完成极空间 NAS Docker 镜像加速配置
本教程详细介绍了如何在极空间NAS上配置轩辕镜像加速器,以提升Docker镜像的下载速度与稳定性。内容涵盖账号注册、网络确认、加速器设置及验证方法,并提供常见问题解决方案,帮助用户高效完成容器化应用部署。
kde
637 1
|
5月前
|
Prometheus 监控 Cloud Native
Prometheus配置docker采集器
本文介绍了如何使用 Prometheus 监控 Docker 容器,涵盖环境准备、配置文件编写及服务启动等步骤。首先确保安装 Docker 和 Docker Compose,接着通过 `docker-compose.yml` 配置 Prometheus 和示例应用。创建 `prometheus.yml` 指定数据采集目标,最后用 `docker-compose up -d` 启动服务。文章还展示了甘特图和类图,帮助理解服务状态与关系,助力提升系统可靠性和可维护性。
179 11
kde
|
2月前
|
文件存储 数据安全/隐私保护 开发者
群晖NAS Docker镜像源加速配置教程
本教程介绍了群晖NAS用户如何通过配置轩辕镜像加速服务提升Docker镜像拉取速度。内容包括配置前准备、详细设置步骤及日常使用说明,帮助用户快速完成配置并享受高效稳定的镜像下载体验。
kde
1359 59
kde
|
Docker 容器 文件存储
飞牛fnOS Docker镜像加速配置全攻略
本文介绍了如何在飞牛fnOS中配置Docker镜像加速服务,通过设置轩辕镜像仓库加速器,提升镜像拉取速度与稳定性。内容涵盖配置前准备、加速源设置、首选加速源调整及使用指南,帮助用户高效完成镜像操作。
kde
783 56
|
2月前
|
Java 分布式数据库 Docker
使用Docker配置并连接HBase的Java API
本流程概要的解释了如何在Docker上配置并启动HBase服务,并通过Java API进行连接和操作表,不涉及具体的业务逻辑处理和数据模型设计,这些因应用而异需由开发者根据实际需求进行实现。
121 13
|
3月前
|
存储 NoSQL MongoDB
Docker中安装MongoDB并配置数据、日志、配置文件持久化。
现在,你有了一个运行在Docker中的MongoDB,它拥有自己的小空间,对高楼大厦的崩塌视而不见(会话丢失和数据不持久化的问题)。这个MongoDB的数据、日志、配置文件都会妥妥地保存在你为它精心准备的地方,天旋地转,它也不会失去一丁点儿宝贵的记忆(即使在容器重启后)。
345 4
|
Docker 容器
《第一本Docker书(修订版)》——1.4 Docker与配置管理
从Docker项目公布以来,已经有大量关于“哪些配置管理工具适用于Docker”的讨论,如Puppet、Chef。Docker包含一套镜像构建和镜像管理的解决方案。现代配置管理工具的原动力之一就是“黄金镜像”模型[8]。
1647 0
|
2月前
|
存储 监控 测试技术
如何将现有的应用程序迁移到Docker容器中?
如何将现有的应用程序迁移到Docker容器中?
220 57