繁体   English   中英

从 Docker 容器连接到主机 Cosmos 模拟器

[英]Connecting to host Cosmos emulator from Docker container

我有一个通过 docker compose 在 docker 容器中运行的 .net 应用程序。 我正在使用带有运行 Linux 容器的 Docker Desktop 的 Windows 机器。

应用程序连接到 Cosmos 实例。 默认情况下,帐户密钥设置为模拟器密钥。

这是docker-compose.yml的部分

  customerapi:
    container_name: mycustomerapi
    image: acr.io/customer-api:master
    ports:
      - "20102:80"
    environment:
      - ASPNETCORE_ENVIRONMENT=Development
      - CosmosOptions__Endpoint=${endpoint}
      - CosmosOptions__DisableSsl=true

如果我覆盖帐户密钥和端点,我可以让应用程序使用托管在 Azure 中的真实实例进行连接,但我无法让它连接到在主机上运行的模拟器。

我尝试将${endpoint}设置为以下值,但没有成功;

我也尝试过使用network_mode: host和两个端点。

我需要使用AllowNetworkAccess运行 Cosmos

此答案显示了如何使用/AllowNetworkAccess参数启动模拟器。
局域网上的 Azure Cosmos DB 模拟器
一旦它运行起来,我就可以使用https://host.docker.internal:8081/并且容器会变得栩栩如生!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM