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

Azure DevOps流水线无法获取容器资源详情问题排查

解决Azure DevOps流水线ACR资源变量引用报错问题

问题根源

脚本报错是因为在Bash环境中,$(...)会被解析为命令替换(执行括号内的命令并返回输出),而非Azure DevOps的变量引用。同时容器资源变量属于流水线初始化阶段确定的模板级变量,使用运行时变量语法$(...)无法被正确解析。

修复方案

直接使用Azure DevOps的模板表达式语法${{ ... }}引用容器资源变量,该语法会在流水线编译阶段完成变量替换,避免与Bash的命令替换冲突。修改后的YAML如下:

resources:         
  containers:
  - container: testContainer
    type: ACR
    azureSubscription: <Subscription>
    endpoint: <EndPoint>
    resourceGroup: <ResourceGroup>
    registry: <Registry>
    repository: <Repository>

stages:
  - stage: DoWork
    jobs:
      - job: DoWork
        steps:
          - script: |
              echo ${{ resources.container.testContainer.type }}
              echo ${{ resources.container.testContainer.registry }}
              echo ${{ resources.container.testContainer.tag }}

额外验证点

如果修改后仍有问题,请确认:

  • 手动触发流水线时已选择有效的ACR镜像,确保资源变量已被正确初始化
  • 容器资源名称testContainer与YAML中的引用完全一致(大小写敏感)

内容的提问来源于stack exchange,提问作者Matthew van Boheemen

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.08 11:00:20