Я хочу создать контейнер Docker для react-hot-loader. Но inotify, вероятно, не работает внутри контейнера. Поэтому HMR сломан.Inotify не работает на Docker для mac
Я использую Docer для mac Версия 1.12.0-rc2-beta16 (сборка: 9493).
Это мой docker-compose.yml.
version: "2"
services:
web:
build: .
ports:
- "8000:8000"
volumes:
- .:/usr/src/app
- /usr/src/app/node_modules
Мои Dockerfile ниже
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"]
и я поставил react-hot-loader каталогов в том же каталоге.
Когда я выполняю docker-compose up
, я могу получить доступ к localhost:8000
, и мой проект React работает хорошо. Однако HMR не работает, хотя я редактирую свои компоненты React на своей локальной машине.
Когда я попытался отредактировать свой компонент React внутри контейнера, HMR работал хорошо.
Кроме того, я проверил, хорошо ли работает inotify или нет с inotify-tools. Тогда inotify не работает, когда я редактирую файл на своей локальной машине. Конечно, он работает хорошо, когда я редактирую файл внутри контейнера.