| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 | # build front-endFROM node:lts-alpine AS frontendRUN npm install pnpm -gWORKDIR /appCOPY ./package.json /appCOPY ./pnpm-lock.yaml /appRUN pnpm installCOPY . /appRUN pnpm run build# build backendFROM node:lts-alpine as backendRUN npm install pnpm -gWORKDIR /appCOPY /service/package.json /appCOPY /service/pnpm-lock.yaml /appRUN pnpm installCOPY /service /appRUN pnpm build# serviceFROM node:lts-alpineRUN npm install pnpm -gWORKDIR /appCOPY /service/package.json /appCOPY /service/pnpm-lock.yaml /appRUN pnpm install --production && rm -rf /root/.npm /root/.pnpm-store /usr/local/share/.cache /tmp/*COPY /service /appCOPY --from=frontend /app/dist /app/publicCOPY --from=backend /app/build /app/buildEXPOSE 3002CMD ["pnpm", "run", "prod"]
 |