无法将应用程序与 Docker 中的 CosmosDb 连接

问题描述 投票:0回答:1

我能够使用 Docker 启动并访问 (https://localhost:8081/_explorer/index.html) CosmosDb。但我无法从应用程序连接到本地 CosmosDb。在应用程序日志中,存在无法访问的内部 Docker IP。如何更改应用程序以使用正确的 URL?或者我需要在 docker 中更改一些内容

Current WriteEndpoints = (https://172.17.0.2:8081/) ReadEndpoints = (https://172.17.0.2:8081/)

应用程序设置

  "CosmosDb": {
    "CosmosDbPrimaryKey": "C2y6yDjf5/R+ob0N8A7Cgv30VRDJIWEHLM+4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw/Jw==",
    "Url": "https://localhost:8081",
    "Database": "Test"
  },
_client = new CosmosClient(section["Url"], section["CosmosDbPrimaryKey"])
_client.GetContainer("Test", "Questions");

var result = await container.CreateItemAsync<Test>(new Test
{
    questions = new List<Answer>
    {
        new Answer
        {
            test = "1",
        }
    }
});

此代码与云中的数据库完美配合,我只是将应用程序设置更改为针对本地数据库

docker azure-cosmosdb
1个回答
0
投票

尝试如下创建客户端,

using CosmosClient client = new(
    accountEndpoint: section["Url"],
    authKeyOrResourceToken: section["CosmosDbPrimaryKey"]
);

查看文档这里

© www.soinside.com 2019 - 2024. All rights reserved.