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

在Docker中通过VS Code使用Azure托管标识的问题与解决

解决Docker中Azure托管标识认证问题

解决方案步骤

  1. 修改Dockerfile:
    • 添加一行命令安装Azure CLI:
      RUN sh -c "curl -sL https://aka.ms/InstallAzureCLIDeb | bash"
      
    • 移除最后一行的CMD ["python", "app.py"],因为需要先在容器内完成Azure登录再启动应用。
  2. 构建镜像并启动交互式容器:
    docker run -it [你的镜像名称] bash
    
  3. 在容器内完成Azure登录:
    az login
    
    按照终端提示完成登录操作(如打开指定链接输入验证码)。
  4. 启动Web应用:
    python app.py
    

问题原因说明

你遇到的认证错误核心原因有两点:

  • Docker容器是独立的隔离环境,默认没有安装Azure CLI,导致DefaultAzureCredential尝试使用AzureCliCredential时失败。
  • 本地Docker环境无法访问Azure托管标识的IMDS端点,所以ManagedIdentityCredential无法生效;同时容器不会继承宿主机的Azure登录缓存,其他凭证方式也无法获取有效认证信息。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 19:27:23