首页 > 解决方案 > 错误:带有 docker-compose 服务器定义的 getaddrinfo ENOTFOUND

问题描述

我正在构建一个反应节点应用程序,我正在使用 docker-compose 我的 docker compose 定义如下所示:

version: "3"
services:
  frontend:
    stdin_open: true
    container_name: firestore_manager
    build:
      context: ./client/firestore-app
      dockerfile: DockerFile
    image: rasilvap/firestore_manager
    ports:
      - "3000:3000"
    volumes:
      - ./client/firestore-app:/app
    environment:
      - BACKEND_HOST=backend
      - BACKEND_PORT=8081
    depends_on:
      - backend
  backend:
    container_name: firestore_manager_server
    build:
      context: ./server
      dockerfile: Dockerfile
    image: rasilvap/firestore_manager_server
    ports:
      - "8081:8081"
    volumes:
      - ./server:/app
    environment:
      - BACKEND_HOST=backend
      - BACKEND_PORT=8081

我正在尝试使用 docker-compose 文件中定义的前缀访问 NodeJs 后端端点backend,但是我得到了一个Error: getaddrinfo ENOTFOUND firestore_manager_server,使用容器名称也是如此:firestore_manager_server

正如您在下一个网址中看到的:

firestore_manager_server:8081/firestore?collection=test&field=nombre&value=xxxx
backend:8081/firestore?collection=test&field=nombre&value=xxxx

我使用本地主机没有任何问题。

接下来是 docker ps 命令的结果:

在此处输入图像描述

有任何想法吗?

标签: node.jsdocker-composehost

解决方案


我相信你的网址应该是

前端:8081/firestore?collection=test&field=nombre&value=xxxx

代替

firestore_manager_server:8081/firestore?collection=test&field=nombre&value=xxxx


推荐阅读