Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.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
Inotify don';我不在mac的Docker上工作_Docker_Webpack Dev Server_Webpack Hmr_React Hot Loader - Fatal编程技术网

Inotify don';我不在mac的Docker上工作

Inotify don';我不在mac的Docker上工作,docker,webpack-dev-server,webpack-hmr,react-hot-loader,Docker,Webpack Dev Server,Webpack Hmr,React Hot Loader,我想为创建Docker容器。但是inotify在容器内可能不起作用。因此,HMR被破坏 我在mac版本1.12.0-rc2-beta16(内部版本:9493)中使用Docer 这是我的docker-compose.yml version: "2" services: web: build: . ports: - "8000:8000" volumes: - .:/usr/src/app - /usr/src/app/node_mod

我想为创建Docker容器。但是inotify在容器内可能不起作用。因此,HMR被破坏

我在mac版本1.12.0-rc2-beta16(内部版本:9493)中使用Docer

这是我的docker-compose.yml

version: "2"
services:
  web:
    build: .
    ports:
      - "8000:8000"
    volumes:
      - .:/usr/src/app
      - /usr/src/app/node_modules
我的文件在下面

FROM node:6.2

RUN apt update && apt install vim inotify-tools -y

RUN mkdir -p /usr/src/app
WORKDIR /usr/src/app

COPY package.json /usr/src/app
RUN npm install
COPY . /usr/src/app

EXPOSE 8000
CMD ["npm", "start"]
我把目录放在同一个目录中

当我执行
docker compose up
时,我可以访问
localhost:8000
,我的React项目运行良好。然而,即使我在本地机器中编辑React组件,HMR也不起作用

当我试图在容器中编辑React组件时,HMR工作得很好


此外,我还检查了inotify是否能很好地使用。当我在本地计算机上编辑文件时,inotify不起作用。当然,当我在容器中编辑文件时,它工作得很好。

我重新启动了mac,然后HMR工作得很好。

Docker fs不支持inotify,您可以通过webpack配置修复此问题:

watchOptions: {
    aggregateTimeout: 300,
    poll: 1000
}

github问题: