# ----- Stage 1: Build der Angular-Anwendung ----- FROM node:20-alpine AS builder WORKDIR /app # Installieren der Abhängigkeiten (besseres Caching) COPY package*.json ./ RUN npm install --legacy-peer-deps # Kopieren des restlichen Quellcodes COPY . . # Erstellen der Angular-Anwendung für die Produktion RUN npm run build -- --configuration production # ----- Stage 2: Serven der Anwendung mit Nginx ----- FROM nginx:stable-alpine AS runtime # Entfernen der Standard-Konfiguration und Hinzufügen unserer eigenen RUN rm -f /etc/nginx/conf.d/default.conf COPY nginx/default.conf /etc/nginx/conf.d/default.conf # Kopieren der gebauten App aus der "builder"-Stufe # WICHTIG: Der Pfad /app/dist/frontend/ ist an Ihr Projekt angepasst COPY --from=builder /app/dist/frontend/ /usr/share/nginx/html # Dokumentieren, dass der Container Port 3000 bereitstellt EXPOSE 3001 # Starten des Nginx-Servers im Vordergrund CMD ["nginx", "-g", "daemon off;"]