Ajustes de CI/CD.
This commit is contained in:
		
							
								
								
									
										31
									
								
								Frontend/Dockerfile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										31
									
								
								Frontend/Dockerfile
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,31 @@ | ||||
| # --- Etapa 1: Build --- | ||||
| # Usamos una imagen de Node.js para construir los archivos estáticos de React. | ||||
| FROM node:20-alpine AS build | ||||
| WORKDIR /app | ||||
|  | ||||
| # Copiamos los archivos de dependencias y las instalamos. | ||||
| COPY package.json package-lock.json ./ | ||||
| RUN npm install | ||||
|  | ||||
| # Copiamos el resto del código del frontend. | ||||
| COPY . . | ||||
|  | ||||
| # Ejecutamos el script de build de Vite, que genera la carpeta 'dist'. | ||||
| RUN npm run build | ||||
|  | ||||
| # --- Etapa 2: Serve --- | ||||
| # Usamos una imagen de Nginx súper ligera para servir los archivos estáticos. | ||||
| FROM nginx:stable-alpine | ||||
| WORKDIR /usr/share/nginx/html | ||||
|  | ||||
| # Eliminamos el index.html por defecto de Nginx. | ||||
| RUN rm -f index.html | ||||
|  | ||||
| # Copiamos los archivos construidos desde la etapa anterior a la carpeta que Nginx sirve. | ||||
| COPY --from=build /app/dist . | ||||
|  | ||||
| # Nginx por defecto escucha en el puerto 80, así que lo exponemos. | ||||
| EXPOSE 80 | ||||
|  | ||||
| # Comando para iniciar Nginx. Esto asegura que se mantenga corriendo. | ||||
| CMD ["nginx", "-g", "daemon off;"] | ||||
		Reference in New Issue
	
	Block a user