Skeyevss 部署说明
试用安装包下载 | SMS | 试用安装包下载 | 在线演示
当前为自构建部署
1. 适用范围
本文用于本项目的标准化部署,覆盖两种方式:
- 方式 A:单机二进制部署(适合本地/现场环境)
- 方式 B:Docker Compose 部署(适合测试/生产环境)
2. 部署前准备
2.1 服务器建议
- CPU:2 核及以上
- 内存:4GB 及以上
- 磁盘:SSD,建议日志与数据分盘
- 网络:千兆及以上
- 操作系统:Linux 优先(Ubuntu/CentOS),Windows 可部署
2.2 依赖组件
- MySQL(可选,若使用 sqlite 可不启)
- Redis
- etcd
- 媒体服务:
SkeyesMS(必须)
2.3 开放端口(按需)
11001MySQL11002Redis11003etcd11004Web Proxy11005Media Server HTTP11008VSS SIP(TCP/UDP)11009Cron11010DB RPC11011Backend API11013VSS HTTP11014VSS SSE11015VSS Cascade SIP11018VSS WebSocket- RTP/RTC 端口段(按媒体服务配置放行)
3. 配置准备
3.1 环境变量文件
在项目根目录准备:
cp .env.local.default .env.local
生产建议使用独立文件(如 .env.prod 或 .env.prod.d)。
3.2 关键参数
必须先检查:
- 网络:
SKEYEVSS_INTERNAL_IPSKEYEVSS_EXTERNAL_IP
- 数据库:
SKEYEVSS_DATABASE_TYPE(sqlite/mysql)SKEYEVSS_MYSQL_*(mysql 模式下)
- 服务发现:
SKEYEVSS_ETCD_HOSTSKEYEVSS_ETCD_CLIENT_PORT
- 国标 SIP:
SKEYEVSS_VSS_SIP_IDSKEYEVSS_VSS_SIP_DOMAINSKEYEVSS_VSS_SIP_PASSWORD
- 媒体服务联动:
SKEYEVSS_MEDIA_SERVER_*SKEYEVSS_MEDIA_SERVER_NOTIFY_*
4. 单机二进制部署
4.1 启动顺序
建议严格按以下顺序启动:
- MySQL / Redis / etcd
DB RPCVSSBackend APICronWeb ProxySkeyesMS(确保可用并与 VSS 配置一致)
4.2 启动命令示例
go run core/app/sev/db/main.go -env .env.local -f etc/.db-rpc.yaml
go run core/app/sev/vss/main.go -env .env.local -f etc/.vss.yaml
go run core/app/sev/backend/main.go -env .env.local -f etc/.backend-api.yaml
go run core/app/sev/cron/main.go -env .env.local -f etc/.cron.yaml
go run core/app/sev/web/main.go -env .env.local -f etc/.web-sev.yaml -web-static-dir <前端构建目录>
媒体服务按其独立参数启动,例如:
<SkeyesMS可执行文件> -c etc/skeyesms.conf -p 11005
4.3 访问验证
- 平台入口:
http://<IP>:11004 - API(经代理):
http://<IP>:11004/api-backend - 默认账号(按 env):
admin / 111111
5. Docker Compose 部署
5.1 前置条件
- 已安装 Docker 与 Docker Compose
- 已准备部署目录(对应
SKEYEVSS_SEV_VOLUMES_DIR) - 已准备 env 文件(如
.env.prod.d)
5.2 启动命令
在 docker-compose.yml 所在目录执行:
docker-compose --profile core --profile conf up -d
如需包含依赖更新或构建流程,可按需增加 profile(needed-update、builder 等)。
5.3 查看状态
docker-compose ps
docker-compose logs -f vss
docker-compose logs -f backendapi
5.4 停止服务
docker-compose down
6. 健康检查与验收
部署完成后建议逐项验收:
- 进程/容器都为运行状态
DB RPC已注册到 etcdBackend API可正常返回登录接口Web Proxy可访问管理页面- GB28181 设备可注册并在线
- 实时播放链路可用(VSS -> SkeyesMS -> 前端)
- 日志目录正常写入(
logs/或挂载目录)
7. 升级与回滚
7.1 升级建议
- 备份:
- MySQL 数据
- 配置文件(env +
etc/*.yaml) - 关键目录(日志、证书、静态资源)
- 灰度验证:
- 先在测试环境验证启动和播放链路
- 正式升级:
- 先停业务服务,再升级二进制/镜像,再按启动顺序恢复
7.2 回滚建议
- 保留上一个稳定版本二进制或镜像 tag
- 保留对应 env 与配置快照
- 回滚后优先验证:
- 登录
- 设备在线
- 播放
- 录像计划
8. 常见问题
- 设备注册失败:优先检查 SIP ID/域/密码与防火墙策略。
- 无法播放:确认 SkeyesMS 运行正常,VSS 通知地址可达。
- DB RPC 调用超时:检查 etcd 注册、Redis/MySQL 连接。
- 页面能开但接口报错:检查 Web Proxy 反向代理和 Backend API 监听地址。
- Docker 启动失败:检查 env 文件变量是否完整、宿主机端口是否被占用。