首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >未能连接到Azure Cosmos DB仿真器,使用Mongo运行码头

未能连接到Azure Cosmos DB仿真器,使用Mongo运行码头
EN

Stack Overflow用户
提问于 2019-12-09 15:35:43
回答 1查看 1.3K关注 0票数 2

我很难使用在码头运行的Azure Cosmos模拟器。当运行我的应用程序时,当我试图连接到DB时,会得到以下错误:

代码语言:javascript
复制
connection error: MongoNetworkError: failed to connect to server [localhost:10255] on first connect [Error: connect ETIMEDOUT 127.0.0.1:10255
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1129:14) {
  name: 'MongoNetworkError',
  [Symbol(mongoErrorContextSymbol)]: {}
}]

设置

根据按码头操作指令运行,我提取了图像并运行

代码语言:javascript
复制
md %LOCALAPPDATA%\CosmosDBEmulator\bind-mount

docker run --name azure-cosmosdb-emulator --memory 2GB --mount "type=bind,source=%LOCALAPPDATA%\CosmosDBEmulator\bind-mount,destination=C:\CosmosDB.Emulator\bind-mount" --interactive --tty -p 8081:8081 -p 8900:8900 -p 8901:8901 -p 8902:8902 -p 10250:10250 -p 10251:10251 -p 10252:10252 -p 10253:10253 -p 10254:10254 -p 10255:10255 -p 10256:10256 -p 10350:10350 mcr.microsoft.com/cosmosdb/windows/azure-cosmos-emulator

配置

  1. 我尝试了几个不同的连接字符串,但没有成功,我使用的主要连接字符串是:
代码语言:javascript
复制
mongodb://localhost:C2y6yDjf5%2FR%2Bob0N8A7Cgv30VRDJIWEHLM%2B4QDU5DE2nQ9nDuVTqobD4b8mGGyPMbIZnqyMsEcaGQy67XIw%2FJw%3D%3D@localhost:10255/admin?ssl=true
  1. 我能够访问资源管理器/index.html上的资源管理器,因此模拟器正在运行。
  2. 我在应用程序中使用猫鼬
EN

回答 1

Stack Overflow用户

发布于 2019-12-09 19:38:44

经过一些沮丧的挠头,我找到了解决办法!根据模拟器指令的码头集装箱页,您需要运行以下docker命令:

代码语言:javascript
复制
docker run --name azure-cosmosdb-emulator --memory 2GB --mount "type=bind,source=%LOCALAPPDATA%\CosmosDBEmulator\bind-mount,destination=C:\CosmosDB.Emulator\bind-mount" --interactive --tty -e AZURE_COSMOS_EMULATOR_MONGODB_ENDPOINT=true -p 8081:8081 -p 8900:8900 -p 8901:8901 -p 8902:8902 -p 10250:10250 -p 10251:10251 -p 10252:10252 -p 10253:10253 -p 10254:10254 -p 10255:10255 -p 10256:10256 -p 10350:10350 mcr.microsoft.com/cosmosdb/windows/azure-cosmos-emulator

重要的更改是添加了:-e AZURE_COSMOS_EMULATOR_MONGODB_ENDPOINT=true

更新:

从那以后,我发现它启用了3.2个协议,用于您需要使用的3.6个协议:-e AZURE_COSMOS_EMULATOR_MONGODB_COMPUTE_ENDPOINT=true

在这个github讨论中有更多的讨论,其中有人还指出Gremlin和Casandra选项是:

  • -e AZURE_COSMOS_EMULATOR_GREMLIN_ENDPOINT=true
  • -e AZURE_COSMOS_EMULATOR_CASSANDRA_ENDPOINT=true
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59252095

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档