node.js - 错误:带有 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 命令的结果:
有任何想法吗?
解决方案
我相信你的网址应该是
前端:8081/firestore?collection=test&field=nombre&value=xxxx
代替
firestore_manager_server:8081/firestore?collection=test&field=nombre&value=xxxx
推荐阅读
- abap - 下达采购订单后如何调用ABAP代码?
- c# - 如何调用“nuget restore”以恢复到托管在内部 nuget 服务器中的特定目录、特定包
- python - Pandas CustomBusinessDay 抵消只在一些假期工作
- c - 如何优化图像像素化程序
- excel - 如何通过自定义 Excel 功能区打开用户窗体
- asp.net-web-api - 带有接受标头和 url 参数的 Web API 内容协商格式化程序
- spring - 使用@Value Spring Annotation 从.yaml 读取的属性映射的正确用法是什么
- java - 如何在没有堆栈/正则表达式的情况下检查平衡括号?
- bash - 将文件作为一个字符串参数传递给 bash 函数
- sql - 如何将 sql 查询转换为 linq LEFT OUTER JOIN