本地部署
本页给出适用于 macOS、Linux 和 Windows WSL 的开发环境最小启动路径。生产部署请使用服务器部署。
环境要求
- JDK 8、Maven 3.6+。
- MySQL 8、Redis 6+。
- Node.js 18+ 与 pnpm。
- Flutter stable(仅开发钰信时需要)。
- Docker Desktop(推荐,用于启动依赖和本地 LiveKit)。
初始化
bash
git clone https://gitee.com/jinzheyi/yubb-saas-pro.git
cd yubb-saas-pro
mysql -u root -p < sql/mysql/1.0/shengyu-saas.sql修改 shengyu-server/src/main/resources/application-local.yaml 中的 MySQL、Redis 配置。不要把本机密码写回仓库;推荐通过 IDE 环境变量或被 Git 忽略的本地文件注入。
启动后端
bash
mvn -pl shengyu-server -am compile
cd shengyu-server
mvn spring-boot:run默认 HTTP 服务端口为 48080,IM WebSocket 端口为 9000。本机 Flutter 真机调试时,不能把 localhost 当作手机可访问的服务地址,应使用开发机的局域网 IP 或可解析的局域网域名。
启动 Web 管理端
bash
cd shengyu-ui/shengyu-ui-admin-vue3
pnpm install
pnpm front
cd ../shengyu-ui-platform-vue3
pnpm install
pnpm front前端 API 基地址应指向本地后端;平台端使用 /platform-api,租户端使用 /admin-api。修改 .env 配置后必须重启 Vite。
启动钰信
bash
cd shengyu-ui/shengyu-ui-admin-flutter
flutter pub get
flutter run钰信的默认配置位于 lib/app/config/app_config.dart,可通过 --dart-define 覆盖 API、WebSocket 与网络探测地址。Web 调试使用 flutter run -d chrome;移动端调试需确认 API、WSS 和 LiveKit 地址均可从设备网络访问。
本地 LiveKit
通话联调前,进入 deploy/livekit/,复制对应环境示例文件并按 README 启动。LIVEKIT_NODE_IP 必须是手机或浏览器可路由的局域网 IP,不能填写 Docker 172.x 地址。启动后使用目录中的网络校验脚本检查 HTTP、RTC 与 ICE 候选。
常见启动检查
- 后端启动失败:检查 MySQL 字符集、端口、数据库名和 Redis 密码。
- 前端登录失败:检查 Vite API 基地址、跨域与后端实际 profile。
- 手机无法收消息:检查
9000WebSocket 地址是否可达。 - 通话接通后无声音或失败:检查 LiveKit 地址、浏览器/系统麦克风权限和 UDP/TCP RTC 端口。