Update Dockerfile

This commit is contained in:
fcarraUniSa
2026-02-18 12:37:46 +01:00
committed by GitHub
parent cfbb1caf7b
commit 8b4e2134d6

View File

@@ -1,24 +1,24 @@
# Build Stage # Usa l'immagine completa di Node 20 per evitare errori di compilazione (gyp/libs mancanti)
FROM node:20-slim as build FROM node:20 AS build
# Installiamo tool di compilazione necessari per alcune dipendenze Node (es. esbuild/vite)
RUN apt-get update && apt-get install -y python3 make g++ && rm -rf /var/lib/apt/lists/*
WORKDIR /app WORKDIR /app
# Copiamo SOLO package.json (ignoriamo package-lock.json per evitare conflitti di OS) # Copia solo il file delle dipendenze
COPY package.json ./ COPY package.json ./
# Installazione pulita ignorando il lockfile locale # Pulisce la cache di npm e installa le dipendenze
RUN npm install --no-package-lock # --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
# Copiamo il resto dei file (grazie al .dockerignore, la cartella node_modules locale NON verrà copiata) # Copia il codice sorgente
COPY . . COPY . .
# Build # Esegue la build di Vite
RUN npm run build RUN npm run build
# Production Stage # Stage di produzione con Nginx
FROM nginx:alpine FROM nginx:alpine
COPY nginx.conf /etc/nginx/conf.d/default.conf COPY nginx.conf /etc/nginx/conf.d/default.conf
COPY --from=build /app/dist /usr/share/nginx/html COPY --from=build /app/dist /usr/share/nginx/html