FROM node:20-slim AS build WORKDIR /app/apps/visualizer COPY apps/visualizer/package.json apps/visualizer/package-lock.json ./ RUN npm ci COPY apps/visualizer/ ./ RUN npm run build FROM node:20-slim WORKDIR /app RUN apt-get update && apt-get install -y --no-install-recommends apache2-utils && rm -rf /var/lib/apt/lists/* && mkdir -p /tokens /srv /auth COPY --from=build /app/apps/visualizer/dist /srv COPY services/frontend/server.mjs /app/services/frontend/server.mjs ENV NODE_ENV=production ENV PORT=8081 EXPOSE 8081 CMD ["node", "services/frontend/server.mjs"]