diff --git a/Dockerfile b/Dockerfile index c901f55..47c121a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,37 +1,14 @@ -# --- STAGE 1: Build dell'applicazione --- -# Usiamo un'immagine con Node per installare le dipendenze e compilare +# Stage 1: Build Node FROM node:lts-alpine as build-stage - -# Impostiamo la cartella di lavoro WORKDIR /app - -# Copiamo prima i file di dipendenze (per sfruttare la cache di Docker) COPY package*.json ./ - -# Installiamo le dipendenze RUN npm install - -# Copiamo tutto il resto del codice sorgente COPY . . - -# Compiliamo il progetto per la produzione -# (Questo crea la cartella 'dist' con i file ottimizzati) RUN npm run build -# --- STAGE 2: Serve con Nginx --- -# Usiamo un'immagine Nginx leggera per servire i file +# Stage 2: Nginx Serve FROM nginx:stable-alpine as production-stage - -# Copiamo la configurazione personalizzata che abbiamo creato al punto 1 COPY nginx.conf /etc/nginx/nginx.conf - -# Copiamo i file compilati dallo Stage 1 dentro la cartella pubblica di Nginx -# NOTA: Assicurati che il comando 'build' di Vue crei una cartella 'dist'. -# Se il tuo progetto crea una cartella diversa (es. 'build'), modifica qui sotto. COPY --from=build-stage /app/dist /app - -# Esponiamo la porta 80 EXPOSE 80 - -# Avviamo Nginx CMD ["nginx", "-g", "daemon off;"] \ No newline at end of file