FROM node:20-alpine AS builder WORKDIR /app COPY package*.json ./ RUN npm ci COPY . . RUN npm run build FROM node:20-alpine WORKDIR /app COPY package*.json ./ RUN npm ci --production COPY --from=builder /app/dist ./dist RUN mkdir -p public/icons EXPOSE 4321 CMD ["node", "dist/server/entry.mjs"]