小编Sug*_*mar的帖子

无法分配请求的地址 (localhost:xxxx) - Docker + Linux 容器

我们有一个 WPF 应用程序,它将调用一个名为 API-1 的 Web API,该 API 在 Docker 容器中运行。我还有另一个名为 API-2 的 API,它也在 docker 中运行,但在不同的容器中。

每当应用程序发生 API-1 调用时,API-1 都会执行一些逻辑并尝试向 API-2 发出发布请求。

现在,我的问题是,对 API-2 的 post 请求总是返回Cannot allocate requested address (localhost:XXXX)

如果我尝试不使用 docker,效果很好。此外,对每个 API 的单独请求也可以正常工作(使用 POSTMAN)

仅当 API 部署在 docker 中时才会出现此问题。我使用 docker-compose 来创建容器。我创建了一个 docker 网桥,并将其分配给 docker-compose.yml 文件中的相应 API。

这是我的 docker-compose 文件以及两个 API 的 docker 文件。

Docker-Compose.yml

version: "3.7"

networks : 
  localdev:
    name: localdev
    external: true

services:
  api-01:
    build:
      context: .
      dockerfile: api-01/Dockerfile
    restart: always
    container_name: "api-01"
    ports:
       - …
Run Code Online (Sandbox Code Playgroud)

docker dockerfile docker-compose asp.net-core docker-network

16
推荐指数
2
解决办法
3万
查看次数