# Builds the static bundle. The backend image copies the result out of here. FROM node:22-alpine AS build WORKDIR /app COPY package.json package-lock.json* ./ RUN npm ci --no-audit --no-fund 2>/dev/null || npm install --no-audit --no-fund COPY . . RUN npm run build FROM busybox:1.36 COPY --from=build /app/dist /dist