如何在docker-compose中配置Azure Blob Storage的目标容器?
报错原因
你当前使用的mcr.microsoft.com/azure-blob-storage:latest是适配Azure IoT Edge的Blob存储镜像,默认开启了本地数据自动分层上传到Azure云端Blob存储的功能,你当前的配置没有提供云端目标容器的连接信息,所以触发了这个错误。
解决方案
根据你的使用场景选择对应配置即可:
场景1:仅用做本地Blob存储,无需同步到云端
直接在docker-compose.yml的environment配置段新增关闭分层功能的参数,修改后的配置如下:
... azureblobstorage: container_name: azureblobstorage image: 'mcr.microsoft.com/azure-blob-storage:latest' ports: - "11002:11002" environment: - LOCAL_STORAGE_ACCOUNT_NAME=account - LOCAL_STORAGE_ACCOUNT_KEY=key # 新增以下配置关闭分层上传功能 - LOCAL_STORAGE_TIERING_ENABLED=false volumes: - azureblobstorage:/blobroot - ./var/containerdata:/srv/containerdata networks: - network ...
场景2:需要将本地数据同步到Azure云端Blob存储
需要补充云端连接的相关配置参数,在environment段新增以下内容:
environment: - LOCAL_STORAGE_ACCOUNT_NAME=account - LOCAL_STORAGE_ACCOUNT_KEY=key # 新增以下云端连接配置 - REMOTE_STORAGE_CONNECTION_STRING=<你的Azure云端Blob存储账户连接字符串> - REMOTE_STORAGE_CONTAINER_NAME=<目标云端Blob容器名称> # 可按需配置同步策略,如下为每5分钟同步一次 - LOCAL_STORAGE_TIERING_UPLOAD_BLOCK_SIZE_MB=4 - LOCAL_STORAGE_TIERING_MAX_UPLOAD_RATE_MBPS=50 - LOCAL_STORAGE_TIERING_POLLING_INTERVAL_SECONDS=300
生效方法
修改配置文件后,执行以下命令重启容器即可:docker-compose up -d --force-recreate azureblobstorage
内容的提问来源于stack exchange,提问作者Hevyweb
相关产品推荐
相关产品推荐

