-
Notifications
You must be signed in to change notification settings - Fork 12
Deployment and Operations
tien.nguyen edited this page Jul 30, 2026
·
2 revisions
This guide details environment setup, infrastructure container startup, local development steps, multi-module build execution, and operational troubleshooting for Emporia Trading Platform.
- Java Development Kit (JDK): OpenJDK 21 or Amazon Corretto 21.
- Build Tool: Apache Maven 3.9+.
- Node.js: Node 20+ & npm 10+ (for React trading frontend).
- Container Runtime: Docker Desktop or Podman (for Kafka & PostgreSQL).
-
Matching Engine Dependency:
exchange-core(git clone https://github.com/nvxtien/exchange-core.git && cd exchange-core && mvn clean install).
Emporia provides a root docker-compose.yml to spin up supporting middleware dependencies (PostgreSQL databases, Zookeeper, Apache Kafka broker).
# Clone repository and navigate to emporia root
cd /Volumes/Work/dev/trading/j-trading/emporia
# Start Docker containers in detached mode
docker compose up -d
# Verify container health status
docker compose ps| Container Name | Internal Port | Mapped Host Port | Purpose |
|---|---|---|---|
emporia-postgres |
5432 |
5432 |
PostgreSQL cluster hosting service databases |
emporia-zookeeper |
2181 |
2181 |
Zookeeper coordination node for Kafka |
emporia-kafka |
9092 |
9092 |
Apache Kafka broker for event streaming |
git clone https://github.com/nvxtien/exchange-core.git
cd exchange-core
mvn clean installmvn clean install -DskipTestsmvn clean verify# 1. Authorisation Service
mvn spring-boot:run -pl authorisation-service
# 2. Static Data Service
mvn spring-boot:run -pl static-data-service
# 3. Market Data Service
mvn spring-boot:run -pl market-data-service
# 4. Order Command Service
mvn spring-boot:run -pl order-command-service
# 5. Order Management Service
mvn spring-boot:run -pl order-management-service
# 6. Execution Service
mvn spring-boot:run -pl execution-service
# 7. Gateway Service
mvn spring-boot:run -pl gateway# Navigate to frontend directory
cd frontend
# Install npm dependencies
npm install
# Start Vite development server (:3001)
npm run devOpen http://localhost:3001 in your browser to access the Emporia Trading Dashboard.
- Trading Terminology Glossary
- Order Lifecycle & Validation
- Order Routing & SOR
- Market Data & Pricing
- Portfolio & Risk Management
- Architecture & Order Flow
- Static Data Service
- Market Data Service
- Order Command Service
- Order Management Service (OMS)
- Execution Service
- Portfolio Service
- Design Patterns
- Microservices Overview
- Exchange-Core Integration
- Testing & Verification
- Deployment & Operations
- Repository: emporia
- Tech Stack: Java 21 | Spring Boot 4.0.7 | React 19 | Kafka | gRPC
- Coverage: 91.95% JaCoCo