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

如何在Azure Pipelines中通过Docker@0任务运行Docker Scout插件?

解决Azure Pipelines中Docker@0任务无法调用Docker Scout的问题

你遇到的核心问题是Docker@0任务的运行环境与手动安装插件的环境相互隔离,导致任务内的Docker无法识别已安装的Scout插件。以下是几种可行的解决方案:

方案1:在Docker@0任务前统一安装Scout插件并确保环境一致

Docker Scout插件需要安装到Docker的CLI插件目录才能被全局识别。你可以在Docker@0任务前添加一个Shell任务,针对代理系统安装插件,确保插件路径被Docker检测到:

Linux代理配置

- task: Bash@3
  displayName: 'Install Docker Scout Plugin'
  inputs:
    targetType: 'inline'
    script: |
      # 安装Docker Scout插件到默认CLI插件目录
      curl -sSfL https://raw.githubusercontent.com/docker/scout-cli/main/install.sh | sh -s --
      # 验证插件是否安装成功
      docker scout --version

- task: Docker@0
  displayName: 'Run Docker Scout'
  inputs:
    containerRegistry: 'my_container_registry'
    action: 'Run a Docker command'
    customCommand: scout my_img:my_tag

Windows代理配置

- task: PowerShell@2
  displayName: 'Install Docker Scout Plugin'
  inputs:
    targetType: 'inline'
    script: |
      # 下载并解压Scout插件到Docker CLI插件目录
      $pluginPath = "$env:ProgramFiles\Docker\cli-plugins"
      Invoke-WebRequest -Uri "https://github.com/docker/scout-cli/releases/latest/download/docker-scout_windows_amd64.zip" -OutFile "docker-scout.zip"
      Expand-Archive -Path "docker-scout.zip" -DestinationPath $pluginPath -Force
      # 验证安装
      docker scout --version

- task: Docker@0
  displayName: 'Run Docker Scout'
  inputs:
    containerRegistry: 'my_container_registry'
    action: 'Run a Docker command'
    customCommand: scout my_img:my_tag

方案2:改用Docker@2任务+Shell任务组合(更推荐)

Docker@0是较旧的任务版本,环境隔离问题更明显。改用Docker@2完成登录,再用Shell任务安装并运行Scout,环境一致性更好:

- task: Docker@2
  displayName: 'Login to Private Registry'
  inputs:
    command: 'login'
    containerRegistry: 'my_container_registry'

- task: Bash@3
  displayName: 'Install Docker Scout and Analyze Image'
  inputs:
    targetType: 'inline'
    script: |
      # 安装Scout插件
      curl -sSfL https://raw.githubusercontent.com/docker/scout-cli/main/install.sh | sh -s --
      # 执行Scout分析命令
      docker scout my_img:my_tag

方案3:检查并升级代理的Docker版本

Docker Scout要求Docker引擎版本≥20.10.17,如果代理上的Docker版本过低,即使安装插件也无法识别。可以先添加升级Docker的步骤:

Linux代理升级Docker

sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io -y

Windows代理升级Docker

可以通过Chocolatey或直接下载安装包升级,比如:

choco install docker-desktop -y

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 09:52:41