Introduction
The Exness Trading Platform uses a distributed microservices architecture with Docker Compose for orchestration. This guide will help you deploy the complete platform with all required services.System Architecture
The platform consists of multiple interconnected services:Frontend Services
- Web application (Next.js)
- Documentation site
Backend Services
- Backend API
- Trading Engine
- WebSocket Server
- Database Storage
Data Services
- Price Poller
- Batch Upload
- Snap Shotting
Infrastructure
- PostgreSQL
- TimescaleDB
- Redis
- MongoDB
Prerequisites
Before deploying the Exness Trading Platform, ensure you have the following installed:Install Docker
Install Docker Compose
Docker Compose V2 is required for the platform.Typically included with Docker Desktop, or install separately for Linux.
System Requirements
Minimum recommended specifications:
- CPU: 4 cores
- RAM: 8GB minimum (16GB recommended)
- Disk: 50GB available space
- Network: Stable internet connection for market data
Quick Start
Configure Environment
Copy the example environment file and configure it:See the Environment Variables guide for detailed configuration.
Start the Platform
Launch all services with Docker Compose:This will:
- Pull all required Docker images
- Create volumes for data persistence
- Start all services in the correct order
- Run database migrations automatically
Service Endpoints
Once deployed, the following services are available:Main trading platform frontend with real-time market data and order management.
Platform documentation and API reference.
REST API for trading operations, authentication, and user management.
Real-time data streaming for live market prices and updates.
Database management interface for viewing and editing data.
Deployment Checklist
Docker and Docker Compose installed
Environment variables configured
Sufficient system resources available
Port availability verified (3000, 3001, 5432, 5433, 6379, 7070, 8000, 27017)
Network connectivity for Binance WebSocket API
Health Checks
The platform includes built-in health checks for all infrastructure services:- PostgreSQL: Checks database connectivity every 10 seconds
- TimescaleDB: Validates TimescaleDB extension availability
- Redis: Pings Redis server to ensure cache availability
- MongoDB: Validates MongoDB connection for snapshot storage
Services automatically wait for their dependencies to be healthy before starting. The
db-migrate service ensures database migrations complete before application services start.Data Persistence
All data is persisted in Docker volumes:postgres_data: User accounts, orders, and transactional datatimescaledb_data: Historical market data and candlesredis_data: Cache and real-time data streamsmongodb_data: Account snapshots and backups
Next Steps
Docker Compose
Learn about service configuration and orchestration
Environment Variables
Configure all environment variables
Database Setup
Understand database migrations and schema