# syntax=docker/dockerfile:1 FROM node:22-alpine AS builder WORKDIR /app COPY package*.json ./ COPY --from=npm-cache / /tmp/npm-cache RUN npm install --cache /tmp/npm-cache --prefer-offline --no-audit COPY tsconfig.json ./ COPY src ./src COPY drizzle ./drizzle RUN npm run build FROM node:22-alpine WORKDIR /app COPY package*.json ./ COPY --from=npm-cache / /tmp/npm-cache RUN npm install --omit=dev --cache /tmp/npm-cache --prefer-offline --no-audit COPY --from=builder /app/dist ./dist COPY drizzle ./drizzle EXPOSE 3008 CMD ["node", "dist/index.js"]