FROM node:22-alpine AS build WORKDIR /app COPY package.json tsconfig.json ./ RUN npm install COPY src ./src COPY public ./public RUN npm run build FROM node:22-alpine WORKDIR /app RUN mkdir -p /data && chown node:node /data USER node COPY --from=build /app/node_modules ./node_modules COPY --from=build /app/dist ./dist COPY --from=build /app/public ./public COPY --from=build /app/package.json ./ ENV DATA_DIR=/data ENV PORT=4000 EXPOSE 4000 CMD ["node", "dist/index.js"]