首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Azure DevOps中运行码头容器

在Azure DevOps中运行码头容器
EN

Stack Overflow用户
提问于 2021-07-01 17:35:50
回答 1查看 712关注 0票数 0

最近,我在使用Trivy实现Azure ACR存储库中的图像扫描管道时,遇到了一些问题。

我创建了与ACR的服务连接,并尝试了命令行taks:

代码语言:javascript
复制
steps:
  - task: Docker@2
    inputs:
      containerRegistry: "CompanyACR"
      command: "login"
- task: CmdLine@2
    displayName: Trivy Image Scan
    inputs:    
      script: |
        echo "##[group] Image Vulnerability Scan (LOW,MEDIUM)"
        docker run \
        --rm \
        -v /var/run/docker.sock:/var/run/docker.sock \
        -v $HOME/.cache/trivy:/root/.cache/ \
        -v $(Build.SourcesDirectory)/templates/junit.tpl:/root/junit.tpl \
        -v $PWD:/work/ \
        --env GITHUB_TOKEN \
        aquasec/trivy \
        --light \
        --no-progress \
        --severity LOW,MEDIUM \
        --ignore-unfixed \
        --format template \
        --template "@/root/junit.tpl" \
        -o /work/junit-report-low-med.xml \
        $(imageName):$(tag)
        echo "##[endgroup]"

        echo "##[group] Image Vulnerability Scan (HIGH,CRITICAL)"
        docker run \
          --rm \
          -v /var/run/docker.sock:/var/run/docker.sock \
          -v $HOME/.cache/trivy:/root/.cache/ \
          -v $(Build.SourcesDirectory)/templates/junit.tpl:/root/junit.tpl \
          -v $PWD:/work/ \
          --env GITHUB_TOKEN \
          aquasec/trivy \
          --light \
          --no-progress \
          --severity HIGH,CRITICAL \
          --ignore-unfixed \
          --format template \
          --template "@/root/junit.tpl" \
          -o /work/junit-report-high-crit.xml \
          $(imageName):$(tag)
        echo "##[endgroup]"

我发现了以下错误:

2021-07-01T15:59:24.614Z致命扫描错误:无法初始化一个扫描器:无法初始化一个码头扫描仪:三个错误发生了:*无法检查图像(/azure-表决:V1):错误:没有这样的图像:/azure-投票:V1*无法初始化Podman客户端:没有找到podman套接字: stat /podman.sock:没有这样的文件或目录* GET https:///oauth2/token?scope=repository%3Aazure-vote%3Apull&service=:未经授权:身份验证,访问https://aka.ms/acr/authorization获取更多信息。

我可以在不登录的情况下复制从az运行的类似错误。我也尝试过Docker任务,但结果是一样的:

代码语言:javascript
复制
steps:
  - task: Docker@2
    inputs:
      containerRegistry: "CompanyACR"
      command: "login"

  - task: Docker@2
    inputs:
      containerRegistry: 'CompanyACR'
      repository: $(imageName)
      tags: $(tag)
      command: 'run'
      arguments: >
        --rm 
        -v /var/run/docker.sock:/var/run/docker.sock 
        -v "/home/vsts/.cache/trivy:/root/.cache/" 
        -v $(Build.SourcesDirectory)/templates/junit.tpl:/root/junit.tpl 
        -v /home/vsts/work/1/s:/work/
        aquasec/trivy 
        --light 
        --no-progress 
        --severity LOW,MEDIUM 
        --ignore-unfixed 
        --format template 
        --template "@/root/junit.tpl" 
        -o /work/junit-report-low-med.xml 
        $(imageName):$(tag)

我假设如果至少使用了,那么至少Docker运行任务应该可以工作。知道我为什么会收到身份验证错误,以及如何使它正常工作。

没有码头的标准配置工作正常:

代码语言:javascript
复制
steps:
- script: |
    sudo apt-get install rpm
    wget https://github.com/aquasecurity/trivy/releases/download/v$(trivyVersion)/trivy_$(trivyVersion)_Linux-64bit.deb
    sudo dpkg -i trivy_$(trivyVersion)_Linux-64bit.deb
    trivy -v
  displayName: 'Download and install Trivy'

- task: Docker@2
  inputs:
    containerRegistry: 'CompanyACR'
    command: 'login'

- task: CmdLine@2
  displayName: "Run trivy scan"
  inputs:
    script: |
     - task: CmdLine@2
      displayName: "Run trivy scan"
      inputs:
        script: |
            trivy image --severity LOW,MEDIUM --format template --template "@templates/junit.tpl" -o junit-report-low-med.xml $(imageName):$(tag)         
            trivy image --severity HIGH,CRITICAL --format template --template "@templates/junit.tpl" -o junit-report-high-crit.xml $(imageName):$(tag)  

您可能会问我为什么要问什么时候有可行的解决方案,只是出于好奇,它为什么不起作用,以及理解docker容器中的身份验证。谢谢你对如何进一步调查.

EN

回答 1

Stack Overflow用户

发布于 2022-03-10 07:41:49

我有一个类似的问题,这是由缺少ACR注册表前缀引起的,我认为这是不需要的,因为映像是在同一个CI管道上本地构建的。无论如何,我建议您在图像名称中添加Azure容器注册表前缀,即‘myRegiy.azu瑞. to /azure-投票:v1’。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/68214640

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档