Docker 部署

适合快速体验。直接拉取官方镜像,一条命令拉起整套服务。

1. 前置条件

组件 最低版本 说明
Docker 20.10+ 容器引擎
Docker Compose v2.0+ 多容器编排(docker compose 子命令)
可用内存 ≥ 4GB 服务较多,内存太小可能起不来
可用磁盘 ≥ 10GB 镜像 + 数据卷

检查环境:

docker --version
docker compose version

2. 一键启动

源码仓库:

# Gitee(国内访问更快)
git clone https://gitee.com/shop-sparker/spark-x.git
cd spark-x/docker

# 或 GitHub(国外)
git clone https://github.com/nick-bai/SparkX.git
cd SparkX/docker

docker compose up -d

执行后,Docker 会自动拉取镜像并启动以下服务:

服务 说明 默认端口
sparkx-server 后端(Spring Boot) 8189
sparkx-web 前端(Nginx 托管) 8189(经 Nginx)
postgres 数据库(带 vector 扩展) 5432
redis 缓存 / 分布式锁 6379
minio 对象存储 9000 / 9001

3. 查看启动状态

docker compose ps

看到所有容器 STATUSUp 即表示启动成功。后端首次启动需要初始化数据库,稍等约 30 秒。

4. 访问系统

浏览器打开:

http://localhost:8189

默认账号:

账号 admin
密码 123456

5. 常用运维命令

docker compose logs -f sparkx-server   # 查看后端实时日志
docker compose restart sparkx-server   # 重启后端
docker compose down                    # 停止并移除所有容器
docker compose pull && docker compose up -d   # 升级到最新镜像

6. 数据持久化

数据保存在 Docker 数据卷中,不会因为 docker compose down 丢失:

作用
sparkx_postgres 数据库文件
sparkx_redis Redis 持久化
sparkx_minio MinIO 对象存储

⚠️ 如需彻底清空数据,需显式删除数据卷:docker compose down -v

7. 常见问题

7.1 端口被占用

修改 docker/.envdocker-compose.yml 中的端口映射,例如把 8189:80 改成 8190:80

7.2 后端启动失败

docker compose logs sparkx-server   # 查看具体报错

最常见原因是数据库未就绪就连接,后端有重试机制,通常会自动恢复。

7.3 拉取镜像超时

国内网络可配置镜像加速器,编辑 /etc/docker/daemon.json:

{
  "registry-mirrors": ["https://docker.1ms.run"]
}

修改后重启 Docker:systemctl restart docker


部署完成后,前往 完成第一个智能体 开始使用。

知识星球
🌟 加入知识星球
解锁源码与设计详解
知识星球二维码 了解详情