Skip to content

Prerequisites

Complete every item in this checklist before proceeding to middleware setup.

Hardware Requirements

ResourceMinimumRecommended
CPU4 cores8+ cores
RAM16 Gi32 Gi
Disk (root /)30 Gi50 Gi
Disk (data, e.g. /home)200 Gi500 Gi (Docker data, registry, backups)
Network100 Mbps1 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.x

If 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.x

Git

bash
git --version

Docker 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 docker

Docker 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-platform

Checklist

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-intra Docker network created
  • [ ] /opt/slaunchx/config/ directory structure created
  • [ ] Backend repository cloned

Internal Handbook