在Windows上使用Docker创build反应应用程序livereload
我试图在Windows 10(Linux容器模式)上运行Docker来运行反应开发工作区。 我设法运行React应用程序样板但livereloading不起作用。
这里有一些细节:
- Dockerfile暴露5000和35729端口
- 文件通过
docker exec
和create-react-app .
在容器中安装和创buildcreate-react-app .
命令 - WS请求状态是101(这是正确的)
Dockerfile:
FROM node:latest #installing react app first RUN npm install -g create-react-app VOLUME [ "/application" ] #First example was EXPOSE 3000 35729 EXPOSE 3000 EXPOSE 35729
-
构build命令:
docker build . -t react-image
docker build . -t react-image
-
运行命令:
docker run -d -p 3000:3000 -p 35729:35729 -v %PATH_TO_APP_FOLDER%\application:/application --name react-container react-image
-
执行命令:
docker exec -it react-container bash
然后在容器内:
-
cd application
-
create-react-app .
-
yarn start
OUTPUT:
编译成功!
您现在可以在浏览器中查看应用程序。
本地: http:// localhost:3000 /在您的networking上: http://172.17.0.2:3000/
请注意开发版本没有优化。 要创build生产版本,请使用纱线生成。
一旦我打开: http:// localhost:3000一切似乎工作正常。 如果我从主机中更改文件,那么文件也会在容器内发生更改(用cat App.js
检查)。 但更改文件不会触发webpack重新编译和livereload。
有什么build议么?
请让我知道,如果我需要提供更多的细节。 谢谢
这可以通过设置watchOptions.poll
来解决在webpackconfiguration里面的true: 引用