# frontend/Dockerfile # 1) Fase de build FROM node:20-alpine AS build WORKDIR /app # Copiamos sólo package.json para cachear mejor COPY package*.json ./ RUN npm install # Copiamos el resto del código COPY . . # Variable para que el front apunte a nginx (/api -> backend) ARG VITE_API_BASE_URL=/api ENV VITE_API_BASE_URL=${VITE_API_BASE_URL} # Construimos el bundle RUN npm run build # 2) Fase de servidor estático. Tenemos que revisar FROM node:20-alpine #FROM nginx:alpine WORKDIR /app #RUN rm -rf /usr/share/nginx/html/* # Copiamos el build #COPY --from=build /app/dist /usr/share/nginx/html COPY --from=build /app/dist ./dist # Server estático muy simple RUN npm install -g serve #EXPOSE 80 EXPOSE 4173 #CMD ["nginx", "-g", "daemon off;"] CMD ["serve", "-s", "dist", "-l", "4173"]