Prerequisites
Complete every item in this checklist before proceeding to middleware setup.
Hardware Requirements
| Resource | Minimum | Recommended |
|---|---|---|
| CPU | 4 cores | 8+ cores |
| RAM | 16 Gi | 32 Gi |
Disk (root /) | 30 Gi | 50 Gi |
Disk (data, e.g. /home) | 200 Gi | 500 Gi (Docker data, registry, backups) |
| Network | 100 Mbps | 1 Gbps |
Operating System
Debian 12 (bookworm) or later. Ubuntu 22.04+ also works.
bash
# Verify
cat /etc/os-release | grep -E "^(ID|VERSION_ID)"
# Expected: ID=debian, VERSION_ID="12"Required Software
Docker Engine 29+
bash
# Verify
docker --version
# Expected: Docker version 29.x.x or higher
docker compose version
# Expected: Docker Compose version v2.x.xIf not installed, follow Docker's official guide.
JDK 21
Required for building the application (not needed on the deployment host if you build elsewhere).
bash
java -version
# Expected: openjdk version "21.x.x"Maven 3.9+
Required for building the application.
bash
mvn -version
# Expected: Apache Maven 3.9.xGit
bash
git --versionDocker Data Root
If your root partition is small, move Docker's data directory to a larger partition:
bash
# Check current data root
docker info | grep "Docker Root Dir"
# If it points to /, move it:
sudo systemctl stop docker
sudo mkdir -p /home/docker-data
sudo rsync -aP /var/lib/docker/ /home/docker-data/
# Edit /etc/docker/daemon.json:
# { "data-root": "/home/docker-data" }
sudo systemctl start dockerDocker Network
All containers communicate on a shared Docker bridge network.
bash
# Create the network (one-time)
docker network create --subnet=172.30.0.0/24 slaunchx-intra
# Verify
docker network inspect slaunchx-intra --format '{{.IPAM.Config}}'
# Expected: [{172.30.0.0/24 172.30.0.1 map[]}]Configuration Directory
Create the directory structure for env files:
bash
sudo mkdir -p /opt/slaunchx/config/{app-prometheus,support-email,support-file,support-schedule,partner-slash,partner-stripe,support-tron-wallet,support-solana-wallet}Each module will have one env file per environment (e.g. /opt/slaunchx/config/app-prometheus/test.env).
Source Code
Clone the backend repository:
bash
git clone https://gitea.slaunchx.cc/slaunchx/slaunchx-backend-platform.git
cd slaunchx-backend-platformChecklist
Before proceeding, verify all of the following:
- [ ] Server meets hardware requirements
- [ ] Docker 29+ installed and running
- [ ] JDK 21 installed (on build machine)
- [ ] Maven 3.9+ installed (on build machine)
- [ ] Docker data root on a partition with sufficient space
- [ ]
slaunchx-intraDocker network created - [ ]
/opt/slaunchx/config/directory structure created - [ ] Backend repository cloned