| 1234567891011121314151617181920212223242526272829303132333435363738394041 | # 使用docker环境对代码进行编译FROM registry.cn-hangzhou.aliyuncs.com/stuuudy/node:18-alpine as builder# 安装 pnpmRUN npm install -g pnpm# 设置工作目录WORKDIR /app# 复制 package.json 和 lock 文件COPY package*.json ./COPY pnpm-lock.yaml ./# 安装依赖RUN pnpm install# 复制源代码COPY . .RUN yarn build# 将编译完成后的代码打包成dokcer镜像FROM registry.cn-hangzhou.aliyuncs.com/stuuudy/node:18-alpine# 安装 PM2RUN npm install -g pm2WORKDIR /app# 从构建阶段复制构建产物和必要文件COPY --from=builder /app/dist ./distCOPY --from=builder /app/package*.json ./COPY --from=builder /app/node_modules ./node_modulesCOPY --from=builder /app/.env ./.env# 暴露端口(根据您的应用需要修改)EXPOSE 3000# 启动应用CMD ["pm2-runtime", "dist/main.js"] 
 |