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

Azure DevOps中Docker Build任务如何更改工作目录?

解决Azure DevOps Docker Build Image任务切换工作目录的问题

以下是几种可行的解决思路,适配你的需求:

思路1:直接配置Docker任务的构建上下文与Dockerfile路径

Azure DevOps的Docker Build Image(1.*)任务无需手动切换目录,通过两个核心参数即可实现等价于本地docker build -f caduceus/deploy/Dockerfile ./..的效果:

  • Build context:设置为$(Build.SourcesDirectory)/caduceus($(Build.SourcesDirectory)是仓库根目录变量,确保路径匹配你的实际目录结构)
  • Dockerfile path:设置为deploy/Dockerfile(此路径是相对于Build context的,因为上下文已指定为caduceus目录)

配置完成后,任务执行的Docker命令会自动以caduceus为上下文,读取其子目录deploy下的Dockerfile,和本地测试的逻辑一致。

思路2:用脚本任务切换目录后执行构建

如果更倾向于手动控制目录切换,可添加Bash/PowerShell任务替代或配合Docker任务:

  • 选择对应代理系统的脚本任务(Bash适用于Linux/macOS代理,PowerShell适用于Windows)
  • 写入如下脚本:
# Bash示例
cd $(Build.SourcesDirectory)/caduceus
docker build -f deploy/Dockerfile .
# PowerShell示例
Set-Location "$(Build.SourcesDirectory)/caduceus"
docker build -f deploy/Dockerfile .

思路3:修改Docker任务的工作目录

在Docker Build Image任务的Advanced选项组中,找到Working directory参数,将其设置为$(Build.SourcesDirectory)/caduceus。此时任务会自动切换到该目录执行后续操作,你只需将Dockerfile path设为deploy/Dockerfile,Build context设为.即可。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 19:48:20