# Usa l'immagine completa di Node 20 per evitare errori di compilazione (gyp/libs mancanti) FROM node:20 AS build WORKDIR /app # Copia solo il file delle dipendenze COPY package.json ./ # Pulisce la cache di npm e installa le dipendenze # --legacy-peer-deps risolve conflitti di versioni comuni # --no-audit e --no-fund velocizzano il processo RUN npm cache clean --force && \ npm install --no-package-lock --legacy-peer-deps --no-audit --no-fund # Copia il codice sorgente COPY . . # Esegue la build di Vite RUN npm run build # Stage di produzione con Nginx FROM nginx:alpine COPY nginx.conf /etc/nginx/conf.d/default.conf COPY --from=build /app/dist /usr/share/nginx/html EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]