System Requirements
Minimum Hardware
- CPU: 4 cores recommended (2 cores minimum)
- RAM: 8GB minimum (16GB recommended for production)
- Storage: 10GB free disk space
- Network: Stable internet connection for dependency downloads
Required Software
Java Development Kit (JDK)
Required Version: JDK 17Maven
Required Version: Maven 3.6+Node.js and npm
Required Version: Node.js 18+ (for Angular 18)Angular CLI
Required Version: Angular CLI 18.2+Database Systems
MySQL
Required Version: MySQL 8.0+ Used by most microservices (auth, catalogo, venta, compra, pedidos, pagos, proveedor)PostgreSQL
Required Version: PostgreSQL 13+ Used by the Cliente serviceOptional Tools
Git
For cloning the repository and managing configuration files:Docker (Optional)
For containerized deployment:Spring Framework Versions
The system uses different Spring Boot versions across microservices:Spring Boot Versions
- Config Server & Registry: Spring Boot 3.5.0, Spring Cloud 2025.0.0-RC1
- Gateway Server: Spring Boot 3.3.3, Spring Cloud 2023.0.3
- Auth Service: Spring Boot 2.5.4, Spring Cloud 2020.0.3
- Business Services (Cliente, Venta, Compra, Pedidos): Spring Boot 3.1.3, Spring Cloud 2022.0.2
Frontend Dependencies
The Angular frontend requires:- Angular: 18.2.0
- Angular Material: 18.2.14
- Chart.js: 4.5.0 (for dashboards)
- jsPDF: 2.5.1 (for PDF generation)
- TypeScript: 5.5.2
Port Requirements
Ensure the following ports are available:Core Infrastructure Ports
Core Infrastructure Ports
- 7070: Config Server
- 8090: Eureka Registry Server
- 8085: API Gateway
Database Ports
Database Ports
- 3306: MySQL (default)
- 5432: PostgreSQL (default)
Frontend Port
Frontend Port
- 4200: Angular Development Server
Microservices Ports
Microservices Ports
- Dynamic port allocation (
PORT:${SERVER_PORT:0}) - Services register dynamically with Eureka
Verify Installation
Run these commands to verify all prerequisites:Next Steps
Database Configuration
Set up MySQL and PostgreSQL databases
Backend Setup
Configure and start Spring Boot microservices