| 1 | # 第一阶段:构建 |
| 2 | FROM nestjs:v10 AS builder |
| 3 | |
| 4 | WORKDIR /app |
| 5 | COPY package*.json ./ |
| 6 | RUN yarn install |
| 7 | COPY . . |
| 8 | RUN yarn run build |
| 9 | |
| 10 | # 第二阶段:创建最终运行镜像 |
| 11 | FROM nestjs:v10 |
| 12 | |
| 13 | # 构建参数 |
| 14 | ENV WORK_HOME /home/server |
| 15 | COPY --from=builder /app/dist /home/server/dist |
| 16 | COPY --from=builder /app/node_modules /home/server/node_modules |
| 17 | |
| 18 | WORKDIR $WORK_HOME |
| 19 | |
| 20 | # 声明对外暴露的端口 |
| 21 | EXPOSE 3000 |
| 22 | # 配置容器启动时运行的命令 |
| 23 | ENTRYPOINT ["node","/home/server/dist/src/main.js"] |
| 24 | |
| 25 |