Skip to content

安装与部署指南

欢迎使用 CXMind 开源版 (CXMind Core)!本指南将带您通过 Docker Compose 快速在本地或服务器上部署一套完整的信令监控与分析系统。

1. 环境依赖

在开始之前,请确保您的服务器或本地开发环境已安装以下基础软件:

  • Docker Engine (版本 20.10.0+ 或更高)
  • Docker Compose (版本 v2.0.0+ 或更高)
  • 如果使用 Linux 服务器,推荐使用 Rocky Linux 9 或 Ubuntu 22.04 LTS。
  • 推荐配置:2 CPU 核心, 4GB 内存, 20GB 磁盘空间。

2. 快速部署 (Docker Compose)

CXMind 社区版已将所有的依赖组件(接入引擎、数据库、内存缓存、管理后台)全部打包至预配置的 docker-compose.community.yml 中,您只需两步即可拉起完整系统:

步骤 1:克隆源码仓库

bash
git clone https://github.com/cxmind/cxmind-core.git
cd cxmind-core

步骤 2:启动社区版服务

执行以下命令,Docker 将自动拉取所需镜像并启动所有容器:

bash
docker-compose -f docker-compose.community.yml up -d

启动过程通常需要 1~2 分钟(初次启动需下载镜像及初始化数据库结构),请耐心等待。

步骤 3:验证运行状态

通过以下命令检查所有的容器是否都处于 Up 状态:

bash
docker-compose -f docker-compose.community.yml ps

如果一切正常,您应该能看到包含 ie (Ingestion Engine), admin-ui (管理后台), surrealdb 以及 redis 等关键服务在运行。

3. 访问管理后台 (Admin UI)

服务成功启动后,您可以使用现代浏览器访问本机的管理台界面:

  • 访问地址: http://localhost:5173 (如果您部署在云端服务器,请将 localhost 替换为服务器的公网 IP)
  • 默认账号: admin@cxmi.ai
  • 默认密码: admin123

安全提示:强烈建议在首次登录后,于系统设置中修改您的管理员密码。

4. 通过模拟器验证数据接入

为了方便刚接触通信协议的开发者快速体验,我们内置了一个 PCAP 信令模拟器,无需实体 PBX 也能生成模拟通话流:

bash
# 在 cxmind-core 根目录下执行
cd simulator
npm install
npm start

此时,模拟器会向本地抛送 SIP/RTCP 信令流,您可以立即在 Admin UI 的监控大屏中看到活动的通话卡片实时涌现。

5. 高阶部署:按拓扑拆分安装模块

在分布式环境中使用高阶 Sniffer-Go 拓扑部署 CXMind 时,您需要在不同的服务器上安装不同的组件。

5.1 简单模式 (单服务器)

所有组件都配置在同一台服务器上。

  • 服务器: SIP PBX, RTPEngine, CXMind Core (IE, AS, AU, DB, Redis), Sniffer-Go。

5.2 中继模式 (SIP 与 RTP 分离)

SIP 信令和 RTP 媒体由不同的服务器处理。

  • SIP 服务器: SIP PBX, Sniffer-Go (配置为转发 HEP 到 RTP 服务器的 Sniffer-Go)。
  • RTP 服务器: RTPEngine, Sniffer-Go (配置为 Relay 模式 relay_upstream: true)。
  • 中心服务器: CXMind Core (IE, AS, AU, DB, Redis)。

5.3 对等网状模式 (HA 集群)

多台服务器同时处理 SIP 和 RTP,并可能涉及跨服务器的媒体路由。

  • 集群节点 (A, B, C...): SIP PBX, RTPEngine, Sniffer-Go (配合 hep_peers 配置)。
  • 中心服务器: CXMind Core (IE, AS, AU, DB, Redis)。

如需了解这些拓扑详细的 config.yaml 样例,请参考企业内网 Runbook:docs/runbooks/sniffer-go-deployment-topologies.md

6. 常见问题排查

如果遇到启动问题,请检查:

  1. 端口冲突: 确保本机的 5173 (前台), 6379 (Redis) 以及信令监听端口 UDP 50609060 未被占用。
  2. 查看日志: 使用 docker-compose -f docker-compose.community.yml logs -f ie 可实时查看核心接入引擎的运行日志,以确定是否有特定配置项缺失。

如果您体验后希望解锁 AI 情感识别高并发媒体录音分析 以及 RTP 语音捕获 功能,请前往 cxmi.ai 申请 Pro 商业授权。

Released under the BSL License.