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

使用az storage命令对接Docker版Azurite时遇连接错误求助

解决Docker版Azurite使用az CLI创建容器时的连接错误

当你用Docker运行Azurite时,az CLI默认是指向Azure公有云服务的,所以必须做一些特殊配置才能让它连接到本地的Azurite实例——这就是你遇到Unable to obtain data client. Check your connection parameters.错误的核心原因。下面是具体的解决步骤:

1. 确保Azurite Docker容器正确运行

首先确认你的Azurite容器已经映射了正确的端口:Blob服务默认用10000端口,Queue用10001,Table用10002。启动容器的标准命令应该是这样的:

docker run -d -p 10000:10000 -p 10001:10001 -p 10002:10002 mcr.microsoft.com/azure-storage/azurite

你可以用docker ps检查容器是否在运行,或者访问http://localhost:10000/devstoreaccount1,如果返回XML格式的存储账户信息,说明服务正常启动。

2. 配置az CLI指向本地Azurite

Azurite自带一个固定的开发存储账户:

  • 账户名:devstoreaccount1
  • 账户密钥:Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==
  • Blob服务端点:http://localhost:10000/devstoreaccount1

你有两种方式让az CLI使用这个本地账户:

方式一:在命令中直接指定连接字符串

创建容器时,用--connection-string参数明确指向Azurite:

az storage container create --name my-container --connection-string "DefaultEndpointsProtocol=http;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;BlobEndpoint=http://localhost:10000/devstoreaccount1;"

方式二:设置环境变量(推荐,避免重复输入)

把连接字符串设为环境变量,后续所有az存储命令都会自动使用它:

  • Linux/macOS:
export AZURE_STORAGE_CONNECTION_STRING="DefaultEndpointsProtocol=http;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;BlobEndpoint=http://localhost:10000/devstoreaccount1;"
  • Windows(CMD):
set AZURE_STORAGE_CONNECTION_STRING=DefaultEndpointsProtocol=http;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;BlobEndpoint=http://localhost:10000/devstoreaccount1;
  • Windows(PowerShell):
$env:AZURE_STORAGE_CONNECTION_STRING = "DefaultEndpointsProtocol=http;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;BlobEndpoint=http://localhost:10000/devstoreaccount1;"

设置好之后,直接运行创建容器的命令即可:

az storage container create --name my-container

3. 验证配置是否生效

可以用以下命令列出存储账户里的容器,确认连接成功:

az storage container list --output table

如果能看到你刚创建的容器,说明配置没问题了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 08:59:17