Docker部署Azure Cosmos DB模拟器遇异常:健康检查失败、分区数不符
Azure Cosmos DB模拟器Docker Compose部署问题解答
1. 为何无正常启动提示?
Azure Cosmos DB模拟器在Docker环境下的启动日志本身存在输出不完整的情况,尤其是开启数据持久化后,后台会完成数据目录初始化、分区同步等后续操作,但终端不会输出明确的"启动完成"类提示。只要能正常访问模拟器门户、创建数据库和容器,就说明核心服务已经就绪,无需纠结终端的日志状态。
2. 健康检查失败原因?
Docker Compose配置的健康检查URL一般指向模拟器的特定状态接口,但模拟器的Docker镜像对这个接口的支持存在兼容性问题——要么是接口路径在镜像版本中被修改,要么是该检查端点未对外开放,这就是手动curl返回404的直接原因。另外,开启持久化后,模拟器启动需要更长时间加载本地存储的数据,若健康检查的超时时间设置过短,也会直接判定失败。
3. 分区数与配置不符的原因?
你设置的AZURE_COSMOS_EMULATOR_PARTITION_COUNT参数控制的是逻辑分区的初始数量,而终端显示的"10/6"是模拟器内部的物理分区副本数,二者并非同一概念。物理分区的数量由模拟器根据自身资源情况自动调整,不受该环境变量控制。你配置的5已经生效,只是终端日志显示的是另一维度的分区指标,所以看起来和配置不符。
内容的提问来源于stack exchange,提问作者Sanjay Katta
相关产品推荐
相关产品推荐

