Node.js React应用程序集代理无法与docker compose一起使用
我尝试使用docker compose构建两个容器:Node.js React应用程序集代理无法与docker compose一起使用,node.js,reactjs,docker,docker-compose,gunicorn,Node.js,Reactjs,Docker,Docker Compose,Gunicorn,我尝试使用docker compose构建两个容器: 反应应用程序 由gunicorn供电的烧瓶服务器 我是docker创作的,他们两个都被提升了。当我访问react时,它应该将端口为3000的react应用程序的请求代理给端口为5000的flask服务器。但我遇到了这样的情况: frontend_1 | Proxy error: Could not proxy request /loadData/ from localhost:3000 to http://backend:5000. fro
frontend_1 | Proxy error: Could not proxy request /loadData/ from localhost:3000 to http://backend:5000.
frontend_1 | See https://nodejs.org/api/errors.html#errors_common_system_errors for more information (ECONNREFUSED).
这意味着它仍然不知道后端容器的实际IP地址
以下是一些配置:
docker-compose.yml
version: "3"
services:
backend:
build: ./
expose:
- "5000"
ports:
- "5000:5000"
volumes:
- .:/app
command: gunicorn server:app -c ./gunicorn.conf.py
networks:
- app-test
frontend:
build: ./frontend
expose:
- "3000"
ports:
- "3000:3000"
volumes:
- ./frontend:/app
networks:
- app-test
depends_on:
- backend
links:
- backend
command: yarn start
networks:
app-test:
driver: bridge
后端Dockerfile
FROM python:3.7.3
WORKDIR /app
COPY . /app
RUN pip install -r requirements.txt
FROM node:latest
WORKDIR /app
COPY . /app
前端文件
FROM python:3.7.3
WORKDIR /app
COPY . /app
RUN pip install -r requirements.txt
FROM node:latest
WORKDIR /app
COPY . /app
gunicorn.conf.py
workers = 5
worker_class = "gevent"
bind = "127.0.0.1:5000"
frontend package.json
{
"proxy": "http://backend:5000",
}
我几乎试过了网上说的每一句话,但它并不代表这个请求
我已经知道的一些信息:
提前谢谢 通过使用
bind = "0.0.0.0:5000"
修复了我的问题。尝试将gunicorn配置中的绑定更改为
bind=“0.0.0.0:5000”
,并相应地将compose中后端服务的端口更改为“127.0.0.1:5000:5000”(最后一个是可选的)尝试将绑定更改为bind=“0.0.0:5000”
在gunicorn conf中,并根据“127.0.0.1:5000:5000”更改compose中后端服务的端口(最后一个是可选的)@Nikscorp谢谢!我更改了gunicorn conf文件中的bind=“0.0.0.0:5000”
,这刚刚起作用。感谢您的帮助。不客气,请选择我的答案:)