mcpField
D
docker-scout

docker-scout

github.com/full-stack-skills安全3103 次安装4 周前更新
代码仓库

关于 docker-scout

docker-scout 是一项指导技能,涵盖容器镜像漏洞扫描、SBOM 生成和策略评估,并介绍通过命令行及 CI 集成开展镜像安全检查。

主要功能

  1. 01CVE 漏洞扫描
  2. 02生成 SBOM
  3. 03策略评估
  4. 04CI/CD 集成指导
  5. 05修复建议与验证

适用场景

  1. 01部署前检查镜像漏洞
  2. 02生成 SPDX 格式的 SBOM
  3. 03通过策略检查阻止构建
  4. 04更新依赖后比较镜像

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/full-stack-skills/docker-skills --skill docker-scout

安装后在 Claude Code 中输入/docker-scout确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

agents/
openai.yaml
examples/
01-quick-scan.md
02-cicd-integration.md
references/
01-scout-commands.md
02-policy-evaluation.md

详细介绍

Docker Scout — 镜像漏洞扫描与 SBOM

漏洞扫描、SBOM 生成和策略执行指南。

使用场景

用户提及以下内容时,始终使用此技能:

  • “docker scout”“镜像扫描”“漏洞扫描”
  • “CVE”“漏洞”“SBOM”
  • “软件物料清单”
  • “镜像安全分析”“镜像安全扫描”
  • “策略评估”

核心命令

# Quick vulnerability overview
docker scout quickview myimage:tag

# Detailed CVE report
docker scout cves --format table myimage:tag
docker scout cves --only-fixed myimage:tag   # Show only fixable CVEs
docker scout cves --severity critical,high myimage:tag

# SBOM (Software Bill of Materials)
docker scout sbom myimage:tag                # SPDX format
docker scout sbom --format cyclonedx myimage:tag  # CycloneDX format

# Compare two images
docker scout compare myimage:v1 --to myimage:v2

# Policy evaluation
docker scout policy myimage:tag

CVE 严重级别

级别操作
严重立即修复
高在当前迭代中修复
中安排修复
低持续监控
未指定进行审查

CI/CD 集成

GitHub Actions
- name: Docker Scout
  uses: docker/scout-action@v1
  with:
    command: cves,compare
    image: ${{ steps.meta.outputs.tags }}
    compare-to: registry/${{ env.IMAGE_NAME }}:latest

修复工作流

1. docker scout cves myimage:tag → Identify CVEs
2. Check if fixable: --only-fixed shows which have patches
3. Update base image: FROM alpine:3.20 (newer version)
4. Update dependencies: npm update / pip install --upgrade / apt upgrade
5. Rebuild: docker build -t myimage:v2 .
6. Verify: docker scout compare myimage:v1 --to myimage:v2

工作流 — 推荐扫描流程

步骤 1:快速扫描:docker scout quickview <image> 获取 CVE 摘要 步骤 2:详细分析:docker scout cves --only-severity critical,high <image> 步骤 3:查看建议:docker scout recommendations <image> 获取修复方案 步骤 4:修复并重建:更新基础镜像/依赖 → docker build → 再次扫描验证 步骤 5:CI 集成:docker/scout-action + 策略门禁阻断

注意事项 — 常见陷阱

  • Scout 与 scan 的区别:docker scan(基于 Snyk,已弃用)。→ 解决方法:始终改用 docker scout;卸载旧的 docker scan 插件。
  • 只扫描、不修复:Scout 会显示 CVE,但不会修复。→ 解决方法:使用 docker scout recommendations <image> 获取修复建议;更新基础镜像,或使用较新版本的依赖重新构建。
  • 基础镜像 CVE:许多 CVE 来自基础镜像。→ 解决方法:docker pull alpine:3.20(更新基础镜像);固定摘要以避免意外降级;使用 docker scout cves alpine:3.20 持续监控。
  • 跳过多阶段构建:扫描器需要访问所有构建阶段。→ 解决方法:确保所有阶段产物都已通过 COPY --from=... 正确复制;必要时为中间阶段添加标签。

边界 — 能力边界(适用与不适用场景)

分类场景说明
✅ 能做CVE 漏洞扫描CLI:docker scout cves + quickview
✅ 能做SBOM 生成docker scout sbom --format spdx
✅ 能做策略评估与 CI 阻断策略评估 + GitHub Actions
⚠️ 需条件私有仓库扫描需要 Docker Scout 订阅
⚠️ 需条件跨组织比较需要 Scout Dashboard(Web UI)
❌ 超范围运行时安全使用 docker-security
❌ 超范围第三方扫描器(Trivy/Grype)各工具需单独使用
❌ 超范围修复漏洞(更新依赖)由开发者自行完成

不适用此技能的场景

❌ 跳过✅ 改用
运行时安全(seccomp/AppArmor)docker-security
构建镜像docker-build
CI/CD 流水线设置docker-cicd
仓库管理docker-hub

安全与稳定性

  • 在 CI/CD 中运行 Scout,在部署前发现漏洞。
  • 订阅 Docker 安全公告,以接收零日漏洞通知。
  • 未捆绑可执行脚本。仅提供指南。

📚 官方文档参考

文档地址
Docker Scout 概述https://docs.docker.com/scout/
Scout 快速入门https://docs.docker.com/scout/quickstart/
Scout CLI 参考https://docs.docker.com/reference/cli/docker/scout/
策略评估https://docs.docker.com/scout/policy/
CI 集成https://docs.docker.com/scout/integrations/ci/
SBOM 管理https://docs.docker.com/scout/explore/sbom/

🧭 Docker 技能之旅

📍 你在这里:docker-scout — 镜像安全扫描

← 上一项:docker-security — 安全加固 → 下一项:docker-hub — 仓库管理

常见问题

Q1:如何快速上手此技能? A:参考上方的快速开始章节,按步骤操作即可。

Q2:遇到版本不兼容问题怎么办? A:检查依赖版本,使用 lock 文件锁定,参考常见陷阱章节。

Q3:如何在生产环境使用? A:参考最佳实践章节,确保配置正确,做好监控和日志。

Q4:如何优化性能? A:参考性能优化相关文档,使用缓存、索引等手段。

Q5:如何贡献或反馈问题? A:在 GitHub 仓库提交 Issue 或 Pull Request。

Q6:是否支持中文? A:支持中文文档和中文注释,详见国内适配章节。

评论

支持 Markdown