前置条件
在开始中间件部署之前,请完成此清单中的所有项目。
硬件要求
| 资源 | 最低配置 | 推荐配置 |
|---|---|---|
| CPU | 4 cores | 8+ cores |
| RAM | 16 Gi | 32 Gi |
磁盘(根目录 /) | 30 Gi | 50 Gi |
磁盘(数据目录,如 /home) | 200 Gi | 500 Gi(Docker 数据、镜像仓库、备份) |
| 网络 | 100 Mbps | 1 Gbps |
操作系统
Debian 12 (bookworm) 或更高版本。Ubuntu 22.04+ 也可以。
bash
# Verify
cat /etc/os-release | grep -E "^(ID|VERSION_ID)"
# Expected: ID=debian, VERSION_ID="12"必要软件
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如果尚未安装,请参考 Docker 官方安装指南。
JDK 21
构建应用时需要(如果在其他机器构建则部署主机不需要)。
bash
java -version
# Expected: openjdk version "21.x.x"Maven 3.9+
构建应用时需要。
bash
mvn -version
# Expected: Apache Maven 3.9.xGit
bash
git --versionDocker 数据目录
如果根分区空间较小,请将 Docker 的数据目录移至更大的分区:
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 网络
所有容器通过共享的 Docker bridge 网络进行通信。
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[]}]配置目录
创建环境变量文件的目录结构:
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}每个模块按环境有一个 env 文件(例如 /opt/slaunchx/config/app-prometheus/test.env)。
源代码
克隆后端仓库:
bash
git clone https://gitea.slaunchx.cc/slaunchx/slaunchx-backend-platform.git
cd slaunchx-backend-platform检查清单
在继续之前,请确认以下所有项目:
- [ ] 服务器满足硬件要求
- [ ] 已安装 Docker 29+ 并正在运行
- [ ] 已安装 JDK 21(在构建机器上)
- [ ] 已安装 Maven 3.9+(在构建机器上)
- [ ] Docker 数据目录位于有足够空间的分区上
- [ ] 已创建
slaunchx-intraDocker 网络 - [ ] 已创建
/opt/slaunchx/config/目录结构 - [ ] 已克隆后端仓库