Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在ReactJS Docker中热重新加载_Python_Node.js_Reactjs_Docker - Fatal编程技术网

Python 如何在ReactJS Docker中热重新加载

Python 如何在ReactJS Docker中热重新加载,python,node.js,reactjs,docker,Python,Node.js,Reactjs,Docker,这听起来可能很简单,但我有这个问题 我有两个docker容器在运行。一个用于我的前端,另一个用于我的后端服务 这是两种服务的Dockerfiles 前端Dockerfile: # Use an official node runtime as a parent image FROM node:8 WORKDIR /app # Install dependencies COPY package.json /app RUN npm install --silent # Add rest of

这听起来可能很简单,但我有这个问题

我有两个
docker
容器在运行。一个用于我的
前端
,另一个用于我的
后端
服务

这是两种服务的
Dockerfile
s

前端
Dockerfile

# Use an official node runtime as a parent image
FROM node:8

WORKDIR /app

# Install dependencies
COPY package.json /app

RUN npm install --silent

# Add rest of the client code
COPY . /app

EXPOSE 3000

CMD npm start
FROM python:3.7.7

WORKDIR /usr/src/app

COPY requirements.txt ./
RUN pip install --no-cache-dir -r requirements.txt

COPY server.py /usr/src/app
COPY . /usr/src/app

EXPOSE 8083

# CMD ["python3", "-m",  "http.server", "8080"]
CMD ["python3", "./server.py"]
后端
Dockerfile

# Use an official node runtime as a parent image
FROM node:8

WORKDIR /app

# Install dependencies
COPY package.json /app

RUN npm install --silent

# Add rest of the client code
COPY . /app

EXPOSE 3000

CMD npm start
FROM python:3.7.7

WORKDIR /usr/src/app

COPY requirements.txt ./
RUN pip install --no-cache-dir -r requirements.txt

COPY server.py /usr/src/app
COPY . /usr/src/app

EXPOSE 8083

# CMD ["python3", "-m",  "http.server", "8080"]
CMD ["python3", "./server.py"]
我正在使用docker compose.yaml构建图像,如下所示:

version: "3.2"

services:

  frontend:
    build: ./frontend
    ports:
      - 80:3000
    depends_on: 
      - backend

  backend: 
    build: ./backends/banuka
    ports: 
      - 8080:8083
当前端或后端发生更改时,如何更新这两项服务

我找到了这个repo,它是
reactjs
python flask
posgresel
的booilerplate,它说它已经为
reactjs
前端和
python flask
后端启用了
热重新加载。但我找不到任何与此相关的东西。有人能帮我吗


我想要的是:在每次代码更改之后,容器应该自动更新

在docker-compose.yml中尝试此功能

version: "3.2"

services:

  frontend:
    build: ./frontend
    environment:
      CHOKIDAR_USEPOLLING: "true"
    volumes:
      - /app/node_modules
      - ./frontend:/app
    ports:
      - 80:3000
    depends_on: 
      - backend

  backend: 
    build: ./backends/banuka
    environment:
      CHOKIDAR_USEPOLLING: "true"
    volumes:
      - ./backends/banuka:/app    
    ports: 
      - 8080:8083

基本上,您需要chokidar环境来启用热重新加载,并且需要卷绑定来使您机器上的代码与容器中的代码通信。看看这是否有效。

您需要在作文中添加CHOKIDAR\u USEPOLLIN=trueenv@AtinSingh为您的前端提供所有服务。但我想如果您使用的是nodemonI,那么后端也需要它,不要使用
nodemon
。它是一个简单的python服务器。如何对后端执行此操作?很抱歉,我对Python一无所知。我只在节点jsSso上工作过,您已经在
后端
中放置了
CHOKIDAR\u USEPOLLING:“true”
。我想这也适用于
reactjs
/前端更改?@user13456401是的,应该是这样。试试看,测试完后我会给你回复的。你是否在其他社交媒体上,我可以联系你?@user13456401我非常活跃,所以你可以在这里联系我。我也在reddit上。谢谢你。如果这里有问题,我会联系你的