Skip to content

Backend Platform Deployment Guide

This guide walks an operations engineer through deploying the SlaunchX backend platform from scratch. Follow the chapters in order for a first-time deployment; experienced operators can jump to specific sections.

Architecture

The backend platform is a containerized multi-service system running on a single Linux host via Docker.

┌─────────────────────────────────────────────────────────────────┐
│  Host: slaunchx-intra (Debian 12)                               │
│                                                                 │
│  ┌─ Middleware ──────────────────────────────────────────────┐  │
│  │  MySQL 8.4    Redis 7.2    RabbitMQ 3.13    MinIO        │  │
│  │  (127.0.0.1)  (127.0.0.1)  (127.0.0.1)     (127.0.0.1) │  │
│  └──────────────────────────────────────────────────────────┘  │
│                                                                 │
│  ┌─ Application Services (0.0.0.0) ─────────────────────────┐  │
│  │                                                           │  │
│  │  app-prometheus ──── Core API gateway + business logic    │  │
│  │  support-email ───── Email sending service                │  │
│  │  support-file ────── File upload/download (MinIO)         │  │
│  │  support-schedule ── Scheduled tasks + event consumer     │  │
│  │  partner-slash ───── Slash platform integration           │  │
│  │  partner-stripe ──── Stripe payment integration           │  │
│  │  support-tron ────── TRON blockchain wallet               │  │
│  │  support-solana ──── Solana blockchain wallet             │  │
│  │                                                           │  │
│  └───────────────────────────────────────────────────────────┘  │
│                                                                 │
│  Docker Network: slaunchx-intra (172.30.0.0/24)                 │
└─────────────────────────────────────────────────────────────────┘

Service Dependencies

app-prometheus ──→ MySQL, Redis, RabbitMQ, MinIO
support-email ───→ Redis, SMTP (external)
support-file ────→ MinIO
support-schedule → RabbitMQ, MySQL
partner-slash ───→ Slash API (external)
partner-stripe ──→ Stripe API (external)
support-tron ────→ TRON RPC (external), MySQL
support-solana ──→ Solana RPC (external), MySQL

app-prometheus is the core service — deploy it first after middleware. All other services are optional depending on which features you need.

Environment Matrix

EnvironmentApp PortsMiddleware PortsProfileUse Case
dev33xxx35xxx/36xxxdevLocal development (LAN-accessible)
test18xxx18xxxtestIntegration testing
alpha19xxx19xxxalphaStaging / pre-production
product29xxx29xxxproductProduction

Port suffix per module:

SuffixModule
020app-prometheus
030support-email
040support-file
050support-schedule
060support-tron-wallet
070support-solana-wallet
101partner-slash
102partner-stripe

Example: app-prometheus in test = port 18020, in alpha = port 19020.

Reading Order

#ChapterWhat You'll Do
1PrerequisitesVerify server, install tools, create Docker network
2Middleware SetupDeploy MySQL, Redis, RabbitMQ, MinIO
3Build and RegistryBuild Java app, create Docker images, set up private registry
4Application ConfigurationUnderstand config layers, prepare env files
5Deploy ServicesStart all application containers in dependency order
6Health Check and VerificationVerify every service is running correctly
7Backup and MaintenanceSet up backups, log rotation, upgrade procedures
8ReferencePort tables, naming conventions, command cheat sheet

Internal Handbook