Node.js 使用dockerfile安装fresh react应用程序
我正在尝试使用Dockerfile运行React的新安装Node.js 使用dockerfile安装fresh react应用程序,node.js,reactjs,docker,npm,Node.js,Reactjs,Docker,Npm,我正在尝试使用Dockerfile运行React的新安装 FROM node:12.14-alpine RUN mkdir /app WORKDIR /app RUN npm install -g nodemon \ npx create-react-app . COPY package.json package.json RUN npm install --silent COPY . . CMD [ "node", "start" ] 我的根文件夹是空的,因此不存在pack
FROM node:12.14-alpine
RUN mkdir /app
WORKDIR /app
RUN npm install -g nodemon \
npx create-react-app .
COPY package.json package.json
RUN npm install --silent
COPY . .
CMD [ "node", "start" ]
我的根文件夹是空的,因此不存在package.json文件等。当我运行docker compose-up--build
时,我收到以下错误,表明npx create react应用程序失败。
Step 5/9 : RUN npm install -g nodemon npx create-react-app .
---> Running in c4878af5f94d
npm ERR! code ENOLOCAL
npm ERR! Could not install from "" as it does not contain a package.json file.
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2020-02-18T12_55_14_899Z-debug.log
ERROR: Service 'react' failed to build: The command '/bin/sh -c npm install -g nodemon npx create-react-app .' returned a non-zero code: 1
知道我做错了什么吗?我没有在本机上安装node或npm,因此不需要通过docker运行所有内容您需要删除。在运行结束时:
RUN npm install -g nodemon \
npx \
create-react-app
您忘记了第7行开头的“&&”
FROM node:12.14-alpine
RUN mkdir /app
WORKDIR /app
RUN npm install -g nodemon \
&& npx create-react-app .
COPY package.json package.json
RUN npm install --silent
...
CMD [ "node", "start" ]
我尝试了你的代码,但仍然抛出了一个错误
错误:服务'react'无法生成:命令'/bin/sh-c npm install-g nodemon npx create react app'返回了一个非零代码:239
当你运行create react app
时,这不是要为我创建一个package.json文件吗?我通过了这个错误--force to the npm命令:npm install--force-g…我建议先用本地节点构建应用程序,然后再推出Docker。运行create react app
并创建一个新的空应用程序,因为图像中打包的单个内容似乎没有那么有用。@DavidMaze使用docker无法做到这一点吗?我更愿意让我的本地操作系统更干净,或者如果有其他方法安装react?