【发布时间】:2018-10-01 18:25:43
【问题描述】:
我目前正在尝试在 docker 中运行 React 应用程序。我正在运行包含在容器内运行 npm start 的 create-react-app 包中的脚本,并且我正在使用绑定挂载在主机中工作并反映容器中的更改。遗憾的是,react 包附带的重新编译功能在容器内不起作用,即使文件确实发生了变化。问题是我正在使用案卷工具箱。你们知道可能是什么问题吗?为什么不重新编译?
我的文件结构如下。
project
| .dockerignore
| .gitignore
| docker-compose.yml
| Dockerfile
| LICENSE
| README.md
|
\---frontend
+---nodemodules\*
| package-lock.json
| package.json
| README.md
|
+---public
| index.html
|
\---src
| index.js
|
\---container
App.jsx
Dockerfile
FROM node:8.11.1
COPY . /usr/src/
WORKDIR /usr/src/frontend
ENV PATH /usr/src/frontend/node_modules/.bin:$PATH
RUN npm install -g create-react-app
RUN npm install
EXPOSE 3000
CMD [ "npm", "start" ]
docker-compose.yml
version: "3.5"
services:
react:
build:
context: .
dockerfile: Dockerfile
volumes:
- "./frontend:/usr/src/frontend"
- '/usr/src/frontend/node_modules'
ports:
- "3000:3000"
environment:
- NODE_ENV=development
【问题讨论】:
-
删除图片重新运行。
-
@JinnaBalu 很遗憾这不起作用,,,
-
RUN npm install -g create-react-app,为什么需要这一步。我正在从nodejs.org/en/docs/guides/nodejs-docker-webapp 更改 docker 文件和 docker-compose cotomising 给你
标签: reactjs docker docker-compose create-react-app docker-toolbox