我能够使用 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",
}
}
});
此代码与云中的数据库完美配合,我只是将应用程序设置更改为针对本地数据库
尝试如下创建客户端,
using CosmosClient client = new(
accountEndpoint: section["Url"],
authKeyOrResourceToken: section["CosmosDbPrimaryKey"]
);
查看文档这里