Nestjs Docker 构建错误:找不到 tsconfig.build.json

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

这是我的 Dockerfile:

FROM node AS builder


WORKDIR /app

COPY package*.json ./
COPY prisma ./prisma/
COPY tsconfig.build.json ./
COPY tsconfig.json ./

RUN npm install

COPY . .
RUN npm run build

FROM node

COPY --from=builder /app/node_modules ./node_modules
COPY --from=builder /app/package*.json ./
COPY --from=builder /app/dist ./dist

EXPOSE 3000
CMD [ "npm", "run", "start:dev" ]
Run Code Online (Sandbox Code Playgroud)

这是我的 docker-compose.yml:

version: "3.7"
services:
  web:
    image: Dockerfile
    build:
      context: ./
      dockerfile: Dockerfile.development
    volumes:
      - ./:/app:z
    environment:
      NODE_ENV : development
      TZ: "${TZ:-America/Los_Angeles}"
    ports:
      - "3000:3000"
Run Code Online (Sandbox Code Playgroud)

运行 docker-compose up -d 后,我可以从控制台收到错误:

错误找不到 TypeScript 配置文件“tsconfig.build.json”。请确保您在适当的目录(Nest 工作区内)中运行此命令。

我尝试将 tsconfig.build.json 复制并粘贴到 docker,但仍然不起作用。

请帮忙。

Jay*_*iel 6

在最后一步中,您永远不会复制文件tsconfig.build.json或tsconfig.json. 不过,我不明白start:dev当你已经在 docker 镜像中构建了服务器时你为什么要使用它。你应该只是打电话node dist/main