Reactjs 应用程序与docker compose交互
我正在使用docker compose放置一个react应用程序。 Dockerfile文件和docker-compose.yml已创建,但生成应用程序时出错 DockerfileReactjs 应用程序与docker compose交互,reactjs,docker-compose,Reactjs,Docker Compose,我正在使用docker compose放置一个react应用程序。 Dockerfile文件和docker-compose.yml已创建,但生成应用程序时出错 Dockerfile FROM node:8 WORKDIR /usr/src/app RUN npm ci EXPOSE 3000 # start app CMD ["npm", "start"] docker-compose.yml version: "3.3" servi
FROM node:8
WORKDIR /usr/src/app
RUN npm ci
EXPOSE 3000
# start app
CMD ["npm", "start"]
docker-compose.yml
version: "3.3"
services:
app:
container_name: react_app
build:
context: .
dockerfile: Dockerfile
volumes:
- ./app:/usr/src/app
- /usr/src/app/node_modules
ports:
- '3000:3000'
stdin_open: true
environment:
- NODE_ENV=development
文件夹体系结构是:
docker-compose.yml
码头工人
app/package.json
app/src/
执行docker compose up-d--build命令时,会出现以下错误
建筑应用程序步骤1/5:从节点:8--->8eeadf3757f4步骤2/5:
WORKDIR/usr/src/app->在1420513ebefb中运行
中间容器1420513ebefb->f46f192dd592步骤3/5:运行
npm ci-->在edb7041c8ba5 npm ERR中运行!代码enoint npm ERR!
系统调用打开npm错误!path/usr/src/app/package.json npm ERR!errno-2
npm错误!eNote eNote:没有这样的文件或目录,请打开
“/usr/src/spa/package.json”npm ERR!eNONT这与npm无关
能够找到一个文件。npm错误!埃诺特
npm错误!此运行的完整日志可在以下位置找到:npm ERR/root/.npm/_logs/2020-10-25T19_38_16_569Z-debug.log错误:服务 “app”生成失败:命令“/bin/sh-c npm ci”返回了一个 非零代码:254
您必须将项目文件复制到docker容器的内部。 下面的代码将有助于解决您的问题
FROM node:8
WORKDIR /usr/src/app
COPY package*.json ./
RUN npm ci
COPY . .
EXPOSE 3000
# start app
CMD ["npm", "start"]
Halil错误是第4/7步:运行npm ci-->00e1df66522d npm ERR中运行!cipm只能安装包含现有包lock.json或包含lockfileVersion>=1的npm-shrinkwrap.json的包。使用运行安装npm@5或稍后生成,然后重试。npm错误!此运行的完整日志可在以下位置找到:npm ERR/root/.npm/_logs/2020-10-25T20_45_01_752Z-debug.logI将使用插入和新错误更改post。如果没有package-lock.json,则应使用
npm install
而不是npm ci
。更改为npm安装