Skip to main content
Before deploying Sistema de Ventas, ensure your system meets the following requirements and has the necessary software installed.

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)

The system uses multiple Spring Boot versions across services. Ensure you have JDK 17 installed.
Required Version: JDK 17
sudo apt update
sudo apt install openjdk-17-jdk
java -version

Maven

Required Version: Maven 3.6+
sudo apt install maven
mvn -version

Node.js and npm

Required Version: Node.js 18+ (for Angular 18)
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
sudo apt-get install -y nodejs
node -v
npm -v

Angular CLI

Required Version: Angular CLI 18.2+
npm install -g @angular/[email protected]
ng version

Database Systems

MySQL

Required Version: MySQL 8.0+ Used by most microservices (auth, catalogo, venta, compra, pedidos, pagos, proveedor)
sudo apt update
sudo apt install mysql-server
sudo systemctl start mysql
sudo systemctl enable mysql
mysql --version

PostgreSQL

Required Version: PostgreSQL 13+ Used by the Cliente service
sudo apt update
sudo apt install postgresql postgresql-contrib
sudo systemctl start postgresql
sudo systemctl enable postgresql
psql --version

Optional Tools

Git

For cloning the repository and managing configuration files:
git --version

Docker (Optional)

For containerized deployment:
sudo apt install docker.io docker-compose
sudo systemctl start docker
sudo systemctl enable docker
docker --version

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:
  • 7070: Config Server
  • 8090: Eureka Registry Server
  • 8085: API Gateway
  • 3306: MySQL (default)
  • 5432: PostgreSQL (default)
  • 4200: Angular Development Server
  • Dynamic port allocation (PORT:${SERVER_PORT:0})
  • Services register dynamically with Eureka

Verify Installation

Run these commands to verify all prerequisites:
1

Check Java

java -version
# Should show: openjdk version "17.x.x"
2

Check Maven

mvn -version
# Should show: Apache Maven 3.6.x or higher
3

Check Node.js

node -v
# Should show: v18.x.x or higher
npm -v
4

Check Databases

mysql --version
psql --version
5

Check Angular CLI

ng version
# Should show: Angular CLI: 18.2.x

Next Steps

Database Configuration

Set up MySQL and PostgreSQL databases

Backend Setup

Configure and start Spring Boot microservices

Build docs developers (and LLMs) love