将 Docker Scout 与 SonarQube 集成

SonarQube 集成使 Docker Scout 能够通过策略评估,在一个新的SonarQube 质量门策略下,显示 SonarQube 质量门检查。

工作原理

此集成使用SonarQube webhooks来通知 Docker Scout SonarQube 项目分析何时完成。当 webhook 被调用时,Docker Scout 接收分析结果,并将其存储在数据库中。

当您将新镜像推送到仓库时,Docker Scout 会评估与该镜像对应的 SonarQube 分析记录的结果。Docker Scout 使用镜像上的 Git 出处元数据(来自出处证明或 OCI 注释)将镜像仓库与 SonarQube 分析结果关联起来。

注意

Docker Scout 无法访问历史 SonarQube 分析记录。只有在集成启用后记录的分析结果才可供 Docker Scout 使用。

自管 SonarQube 实例和 SonarCloud 都受支持。

先决条件

要将 Docker Scout 与 SonarQube 集成,请确保:

启用 SonarQube 集成

  1. 前往 Docker Scout 控制面板上的SonarQube 集成页面

  2. 在 **How to integrate** 部分,为此次集成输入一个配置名称。Docker Scout 使用此标签作为集成的显示名称,并用于命名 webhook。

  3. 选择“**下一步**”。

  4. 输入您的 SonarQube 实例的配置详细信息。Docker Scout 使用此信息创建 SonarQube webhook。

    在 SonarQube 中,生成一个新的 **用户令牌**。该令牌需要对指定项目具有“管理”权限,或具有全局“管理”权限。

    输入令牌、您的 SonarQube URL 和您的 SonarQube 组织 ID。如果您使用的是 SonarCloud,则需要 SonarQube 组织。

  5. 选择 **启用配置**。

    Docker Scout 执行连接测试以验证所提供的详细信息是否正确,以及令牌是否具有必要的权限。

  6. 连接测试成功后,您将被重定向到 SonarQube 集成概览,其中列出了所有 SonarQube 集成及其状态。

从集成概览页面,您可以直接进入 **SonarQube 质量门策略**。此策略最初没有结果。要开始查看此策略的评估结果,请触发您项目的新 SonarQube 分析,并将相应的镜像推送到仓库。有关更多信息,请参阅策略描述

© . This site is unofficial and not affiliated with Kubernetes or Docker Inc.