# Multi-stage build para optimizar el tamaño de la imagen
FROM node:22-alpine AS build

# Establecer directorio de trabajo
WORKDIR /app

# Copiar archivos de configuración de npm
COPY package*.json ./

# Instalar dependencias
RUN npm ci --legacy-peer-deps

# Copiar código fuente
COPY . .

# Build de producción
RUN npm run build -- --configuration production

# Etapa de producción con nginx
FROM nginx:alpine

# Instala curl
RUN apk add --no-cache curl

# Copiar configuración personalizada de nginx
COPY nginx.conf /etc/nginx/nginx.conf

# Copiar archivos compilados desde la etapa de build
COPY --from=build /app/dist/frontend/browser /usr/share/nginx/html

# Exponer puerto
EXPOSE 80

# Comando de inicio (nginx se inicia automáticamente)
CMD ["nginx", "-g", "daemon off;"]
