System Requirements
Hardware Requirements
- CPU: 4+ cores recommended for running all microservices
- RAM: Minimum 8GB, 16GB recommended
- Disk Space: At least 5GB free space for Docker images and volumes
Operating System
StreamLine Logistics supports the following operating systems:- Linux (Ubuntu 20.04+, Debian 10+, CentOS 8+)
- macOS 11.0 (Big Sur) or later
- Windows 10/11 with WSL2
Required Software
Java Development Kit (JDK)
StreamLine Logistics requires Java 17 (LTS) to build and run.Apache Maven
Maven 3.8+ is required for building the project.Docker & Docker Compose
Docker Compose V2 is recommended. The project uses
docker compose (not docker-compose).- Docker Engine: 20.10+
- Docker Compose: 2.0+
Git
Git is required for version control and cloning the repository.Optional Tools
IDE Recommendations
-
IntelliJ IDEA (Ultimate or Community Edition)
- Spring Boot plugin
- Lombok plugin
- MapStruct plugin
-
Visual Studio Code
- Spring Boot Extension Pack
- Java Extension Pack
- Lombok Annotations Support
-
Eclipse
- Spring Tools Suite (STS)
- Lombok plugin
Database Clients
For direct database access and inspection:- DBeaver (PostgreSQL, MySQL, MongoDB)
- pgAdmin (PostgreSQL)
- MySQL Workbench (MySQL)
- MongoDB Compass (MongoDB)
API Testing Tools
- Postman - REST API testing
- Insomnia - REST API testing
- curl - Command-line HTTP client
Port Availability
StreamLine Logistics requires the following ports to be free:| Service | Port | Purpose |
|---|---|---|
| Eureka Server | 8761 | Service discovery |
| Config Server | 8888 | Centralized configuration |
| Order Service | 8090 | Order management API |
| Tracking Service | 8091 | Shipment tracking API |
| Inventory Service | 9090 | Inventory management API |
| PostgreSQL (Order DB) | 5432 | Order database |
| MySQL (Inventory DB) | 3306 | Inventory database |
| MongoDB (Tracking DB) | 27017 | Tracking database |
Network Configuration
Docker Network Requirements
The project uses a custom Docker bridge network namedmicroservices-network. Ensure Docker networking is properly configured:
Firewall Considerations
If running on a server with a firewall, ensure the following ports are accessible:Verification Checklist
Before proceeding with installation, verify all prerequisites:- Java 17 installed and in PATH
- Maven 3.8+ installed
- Docker Engine 20.10+ installed
- Docker Compose 2.0+ available
- Git installed
- Required ports are available
- At least 8GB RAM available
- At least 5GB disk space free
- Docker daemon is running