出于某种原因,我在构建我的dockerfile时出现此错误:
“步骤9/11:COPY --from = builder ./usr/src/app/dist / usr / app / dist 复制文件失败:lstat / var / lib / docker / overlay2 / d16c06f4e33e70fea8e03cfe566fe72a763bd1949b67b64603937758fdf7fe1f / merged / usr / app / dist: 不是目录”
但是,如果我注释掉“ COPY”之一,则效果很好(不管是哪一个) 这到底是怎么了?
我的dockerfile如下:
FROM node:latest as builder
WORKDIR /usr/src/app
COPY package*.json ./
RUN npm install
COPY . .
RUN npm run build:ssr
FROM node:latest
COPY --from=builder /usr/src/app/package.json /usr/app
COPY --from=builder /usr/src/app/dist /usr/app/dist
WORKDIR /usr/app
CMD [ "npm", "run", "serve:ssr" ]
答案 0 :(得分:2)
问题是由以下行引起的:
COPY --from=builder /usr/src/app/package.json /usr/app
在这里,您要将/usr/src/app/package.json
复制到/usr
目录中,并将package.json
命名为app
。
指定app
不是文件名。这是一个目录。使用以下内容
COPY --from=builder /usr/src/app/package.json /usr/app/