使用 docker 多阶段构建时找不到模块“/dist/main”

Eri*_*ika 4 node.js docker dockerfile docker-compose nestjs

这是我用来构建 Nestjs 项目的 Dockerfile:

FROM node:14 AS builder
WORKDIR /app
COPY package*.json ./
COPY prisma ./prisma/
COPY protos ./protos/
COPY tsconfig.build.json ./
COPY tsconfig.json ./
RUN npm install
RUN npm run build
COPY . .

FROM node:14-alpine
COPY --from=builder /app/node_modules ./node_modules/
COPY --from=builder /app/package*.json ./
COPY --from=builder /app/dist ./dist/
COPY --from=builder /app/protos ./protos/
COPY --from=builder /app/tsconfig.build.json ./
COPY --from=builder /app/tsconfig.json ./
COPY --from=builder /app/prisma ./prisma/
EXPOSE 5273
CMD ["npm", "run", "start:prod"]
Run Code Online (Sandbox Code Playgroud)

.dockerignore:

.vscode/
node_modules/
npm-debug.log
dist/
graphql/
test/
Run Code Online (Sandbox Code Playgroud)

容器无法工作,我得到:

Cannot find module '/dist/main'
Run Code Online (Sandbox Code Playgroud)

我在这里错过了什么吗?

小智 6

dist 中的 main.js 文件位于 /dist/src/main.js