package.json 在 node:13-alpine docker 容器中找不到

package.json not found in node:13-alpine docker container

我从 this repo 的 2 个文件夹中制作了 2 docker 张图片。 docker文件是:

FROM node:13-alpine
EXPOSE 5000
RUN mkdir /app
RUN mkdir -p /home/app
COPY . /home/app
RUN npm install
CMD ["npm","run","start"]

但 docker 日志显示 package.json 文件未找到,因此容器关闭,我什至无法进入容器终端查看可用文件。

错误输出如下图。

要重现错误,请克隆存储库和 运行 sudo docker-compose -f docker-compose.yaml up

您没有在 dockerfile 中指定工作目录,这就是找不到 package.json 的原因。

参考:https://docs.docker.com/engine/reference/builder/#workdir

RUN npm install

之前添加WORKDIR
WORKDIR /home/app
RUN npm install