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

登录Azure ACR时Azure CLI在go/bin目录查找.docker/config.json的原因咨询

解决Azure ACR登录时Docker配置文件路径错误的问题

看起来你遇到的核心问题是Azure CLI被引导到了错误的路径(go/bin目录)去查找Docker的config.json文件,这大概率是环境变量配置出了问题。下面是一步步的排查和解决方法:

1. 检查DOCKER_CONFIG环境变量

Azure CLI会优先读取DOCKER_CONFIG环境变量来定位Docker配置文件的位置。先确认这个变量是不是被错误设置了:

  • 在Linux/macOS终端执行:
    echo $DOCKER_CONFIG
    
  • 在Windows的CMD执行:
    echo %DOCKER_CONFIG%
    
  • 在Windows PowerShell执行:
    $env:DOCKER_CONFIG
    

如果输出指向了go/bin相关的路径,那这就是问题的根源。

2. 重置DOCKER_CONFIG到默认路径

Docker默认的配置文件存放在用户主目录下的.docker文件夹,我们需要把环境变量改回这个路径:

临时生效(当前终端会话)

  • Linux/macOS:
    export DOCKER_CONFIG=~/.docker
    
  • Windows CMD:
    set DOCKER_CONFIG=C:\Users\<你的用户名>\.docker
    
  • Windows PowerShell:
    $env:DOCKER_CONFIG = "C:\Users\<你的用户名>\.docker"
    

永久生效(所有终端会话)

  • Linux/macOS:把上面的export命令添加到你的shell配置文件里,比如~/.bashrc(Bash)或者~/.zshrc(Zsh),然后执行source ~/.bashrc或者source ~/.zshrc让配置生效。
  • Windows:打开「系统属性」→「高级」→「环境变量」,找到DOCKER_CONFIG变量,修改它的值为你的用户目录下的.docker路径,或者直接删除这个变量(如果是多余设置的)。

3. 验证配置路径正确性

重置环境变量后,先确认Docker能正常读取配置:

  • 执行docker info,在输出里找到类似Docker Root Dir的字段,确认路径和你设置的DOCKER_CONFIG一致。
  • 直接检查用户主目录下的.docker/config.json是否存在,并且有正确的读写权限(Linux/macOS下可以执行chmod 600 ~/.docker/config.json确保权限正确)。

4. 重新执行ACR登录命令

关闭当前终端,重新打开一个新的终端(确保环境变量完全生效),然后再次执行:

az acr login --name myacr

这次应该会正常找到正确的config.json文件,完成登录,之后你就可以推送镜像到Azure ACR了。

如果以上方法无效的额外排查步骤

  • 检查Azure CLI版本:执行az --version,如果版本较旧,升级到最新版:az upgrade。
  • 确认Docker服务确实在正常运行:执行docker ps,如果能正常输出容器列表,说明Docker状态没问题。

内容的提问来源于stack exchange,提问作者JohnStephen.19

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 10:13:09