| 1234567891011121314151617181920212223242526272829303132333435363738 |
- # Étape 1 : Build
- FROM node:20-alpine AS builder
- # Définition du répertoire de travail
- WORKDIR /app
- # Copie des fichiers package.json et package-lock.json
- COPY package.json package-lock.json ./
- # Installation des dépendances
- RUN npm ci
- # Copie du code source
- COPY . .
- # Build de l'application
- ARG VITE_API_URL
- ENV VITE_API_URL=${VITE_API_URL}
- RUN VITE_API_URL=${VITE_API_URL}
- RUN npm run build
- # Étape 2 : Serveur Nginx pour la production et la préproduction
- FROM nginx:alpine AS runner
- # Suppression du fichier de configuration par défaut de Nginx
- RUN rm -rf /etc/nginx/conf.d/default.conf
- # Copie de la configuration Nginx pour servir l’application
- COPY nginx.conf /etc/nginx/conf.d/default.conf
- # Copie des fichiers de build de l'application
- COPY --from=builder /app/dist /usr/share/nginx/html
- # Exposition du port
- EXPOSE 80
- # Commande de démarrage
- CMD ["nginx", "-g", "daemon off;"]
|