FROM node:22-alpine AS deps WORKDIR /app COPY package.json package.json COPY tsconfig.json tsconfig.json RUN npm install FROM node:22-alpine AS build WORKDIR /app COPY --from=deps /app/node_modules node_modules COPY package.json package.json COPY tsconfig.json tsconfig.json COPY src src RUN npm run build FROM node:22-alpine AS runtime WORKDIR /app ENV NODE_ENV=production COPY package.json package.json RUN npm install --omit=dev && npm cache clean --force COPY --from=build /app/dist dist USER node EXPOSE 4000 CMD ["npm", "run", "start"]