Antes de instalar y ejecutar Tiendas Mi Cholo, asegúrate de tener el software correcto en tu máquina. El sistema está compuesto por tres capas: un backend Spring Boot 3.3.4 que requiere Java 21, un frontend Angular 22 que requiere Node.js 20+, y una base de datos MySQL 8 que puede levantarse vía Docker Compose o instalarse localmente. Cumplir con estos requisitos garantiza que la compilación, el arranque y la comunicación entre servicios funcionen sin contratiempos.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/interezante456-pixel/Miercoles-Proyecto/llms.txt
Use this file to discover all available pages before exploring further.
Requisitos de software
| Herramienta | Versión mínima | Uso en el proyecto |
|---|---|---|
| Java (JDK) | 21 | Compilar y ejecutar el backend Spring Boot 3.3.4 |
| Maven | 3.8+ | Gestión de dependencias y empaquetado del backend (pom.xml) |
| Node.js | 20+ | Ejecutar el Angular CLI y compilar el frontend |
| npm | 11+ | Gestión de paquetes del frontend (declarado en package.json como npm@11.12.1) |
| Docker Desktop | Última estable | Levantar MySQL 8 y phpMyAdmin mediante Docker Compose |
| Git | 2.x+ | Clonar el repositorio del proyecto |
Puertos requeridos
Los siguientes puertos deben estar libres en tu máquina antes de iniciar los servicios. Si alguno está ocupado por otra aplicación, deberás detenerla o reconfigurar el puerto correspondiente.| Puerto | Servicio | Descripción |
|---|---|---|
| 8080 | Spring Boot backend API | Servidor Tomcat embebido; todos los endpoints se exponen bajo /api |
| 4200 | Angular dev server | Servidor de desarrollo del frontend (ng serve) |
| 3306 | MySQL 8 | Motor de base de datos, dentro y fuera del contenedor Docker |
| 8081 | phpMyAdmin | Panel web de administración de la base de datos |
Docker Compose es opcional. Si ya tienes MySQL 8 instalado localmente, puedes crear la base de datos
tienda_db manualmente usando el script database/schema.sql e ignorar el docker-compose.yml. Solo asegúrate de que el usuario tienda_user con contraseña tienda123 tenga permisos sobre dicha base de datos, o ajusta las credenciales en application.properties.Imagen de producción del backend
El repositorio incluye unbackend/Dockerfile multi-etapa para construir y ejecutar el backend como un contenedor Docker independiente. Está pensado para entornos de producción o CI/CD donde no se compila en la máquina local.
El La imagen base de ejecución es
backend/Dockerfile utiliza Gradle (./gradlew clean build) en la etapa de compilación, aunque el proyecto también expone un pom.xml para flujos Maven. En desarrollo local se recomienda compilar con ./mvnw package -DskipTests (Maven Wrapper incluido en el repositorio). Para producción, puedes construir la imagen directamente con:eclipse-temurin:21-jre-jammy y expone el puerto 8080.