Docker:运行`npm run build`导致找不到package.json文件

时间:2018-12-11 14:57:34

标签: docker docker-compose

因此,情况是我将bash脚本与docker耦合在一起。我使用bash脚本从远程存储库中提取代码,然后执行docker-compose

这是我的dockerfile

FROM node:6
WORKDIR /home/ayush/project-folder
RUN pwd
RUN npm run build
CMD ["forever", "server/app.js"]

这是我的docker-compose.yml中列出了上述服务的部分:

  web:
    build: ./client
    environment:
      - NODE_VERSION=$NODE_WEB_VERSION
    ports:
      - "4200:4200"
  api:

这是我简单的bash脚本

#!/usr/bin/env bash
frontend=$1
backend=$2
git clone //remote_url --branch $frontend --single-branch
mv project-folder ~/
docker-compose up

但是问题是RUN npm run build gives error

enoent ENOENT: no such file or directory, open '/home/ayush/project-folder/package.json'

可能是什么问题?

1 个答案:

答案 0 :(得分:2)

您忘记了在构建时使用

复制项目
...
COPY . ./
RUN npm run build
...

这会将整个构建上下文(./client的内容)复制到工作目录,该目录在上一条语句中已设置为/home/ayush/project-folder