# STAGE 1: Build FROM node:22-alpine AS builder # Wir erstellen ein Arbeitsverzeichnis, das eine Ebene über dem Projekt liegt WORKDIR /usr/src/app # 1. Wir kopieren die Backend-Models an die Stelle, wo Angular sie erwartet # Deine Pfade suchen nach ../bizmatch-server, also legen wir es daneben. COPY bizmatch-server/src/models ./bizmatch-server/src/models # 2. Jetzt kümmern wir uns um das Frontend # Wir kopieren erst die package Files für besseres Caching COPY bizmatch/package*.json ./bizmatch/ # Wechseln in den Frontend Ordner zum Installieren WORKDIR /usr/src/app/bizmatch RUN npm ci # 3. Den Rest des Frontends kopieren COPY bizmatch/ . # 4. Bauen RUN npm run build:ssr # --- STAGE 2: Runtime --- FROM node:22-alpine WORKDIR /app ENV NODE_ENV=production ENV PORT=4000 # Kopiere das Ergebnis aus dem Builder (Pfad beachten!) COPY --from=builder /usr/src/app/bizmatch/dist /app/dist COPY --from=builder /usr/src/app/bizmatch/package*.json /app/ RUN npm ci --omit=dev EXPOSE 4000 CMD ["node", "dist/bizmatch/server/server.mjs"]