首页
/ wvp-GB28181-pro视频平台容器化部署指南

wvp-GB28181-pro视频平台容器化部署指南

2026-04-22 09:17:21作者:丁柯新Fawn

一、环境准备

1.1 系统环境要求

在开始部署前,请确保您的系统满足以下条件:

  • 操作系统:Linux (推荐Ubuntu 20.04 LTS或CentOS 7以上版本)
  • Docker版本:20.10.0及以上
  • Docker Compose版本:2.0.0及以上
  • 硬件配置:至少2核CPU、4GB内存、50GB可用磁盘空间

建议先执行以下命令检查Docker环境:

▶️ docker --version
▶️ docker-compose --version

若未安装Docker,请参考官方文档进行安装配置。

1.2 项目代码获取

通过Git命令克隆项目代码库:

▶️ git clone https://gitcode.com/GitHub_Trending/wv/wvp-GB28181-pro.git
▶️ cd wvp-GB28181-pro

二、部署实施

2.1 服务架构解析

wvp-GB28181-pro采用微服务架构设计,各组件协同工作实现完整的视频监控功能。系统数据流向如下:

用户请求 → Nginx → WVP应用 → MySQL/Redis → ZLMediaKit

核心服务组件说明:

服务名称 功能描述 服务端口/协议 数据存储
WVP应用服务 国标信令处理、业务逻辑控制 18978(HTTP/API)、8116(SIP) 设备配置、用户数据
ZLMediaKit媒体服务 媒体流转发、录像存储 5540(RTSP)、6080(HTTP) 视频流、录像文件
MySQL数据库 结构化数据存储 3306(TCP) 设备信息、用户数据、配置参数
Redis缓存 会话管理、状态缓存 6379(TCP) 实时会话、临时状态
Nginx代理 前端资源服务、API反向代理 8080(HTTP) 静态资源

为什么这样配置?采用容器化部署可以实现服务隔离,便于横向扩展,同时通过Docker Compose实现服务编排,简化部署和维护流程。

2.2 配置文件修改

进入docker目录,修改核心配置参数:

▶️ cd docker

需要修改的关键配置文件包括:

点击展开详细配置参数
  1. docker-compose.yml:服务编排文件,定义各容器的关系和资源限制
  2. wvp/application-docker.yml:WVP应用配置,包含数据库连接、媒体服务地址等
  3. media/config.ini:ZLMediaKit媒体服务配置

核心参数说明:

  • SIP_HOST:SIP信令服务器IP地址,必须设置为服务器实际IP
  • STREAM_HOST:媒体流服务器IP地址,与SIP_HOST保持一致
  • spring.datasource.password:数据库密码,生产环境必须修改默认值
  • redis.password:Redis密码,生产环境必须设置

使用文本编辑器修改配置文件:

▶️ vi wvp/application-docker.yml

注意:此处需将SIP_HOSTSTREAM_HOST修改为您服务器的实际IP地址,否则设备将无法正常连接。

级联参数配置界面

2.3 容器构建与启动

执行以下命令构建并启动所有服务:

# 构建镜像(首次运行需要下载依赖,耗时较长)
▶️ docker-compose build

# 后台启动服务
▶️ docker-compose up -d

# 查看服务状态
▶️ docker-compose ps

正常情况下,所有服务状态应显示为"Up"。如果有服务未正常启动,可通过以下命令查看日志排查问题:

▶️ docker-compose logs -f [服务名称]

三、功能验证

3.1 服务可用性检查

验证各服务是否正常运行:

  1. WVP应用服务

    ▶️ curl http://localhost:18978/api/version
    

    预期返回系统版本信息JSON。

  2. 媒体服务

    ▶️ curl http://localhost:6080/index/api/stat
    

    预期返回媒体服务状态信息。

  3. Web界面访问: 打开浏览器访问 http://服务器IP:8080,使用默认账号密码 admin/admin 登录系统。

媒体节点管理界面

3.2 设备接入测试

登录系统后,添加测试设备验证功能:

  1. 进入"设备管理" → "国标设备"页面
  2. 点击"添加"按钮,填写设备信息:
    • 设备编号:34020000001380000001(示例)
    • 设备名称:测试摄像头
    • IP地址:设备实际IP
    • 端口:5060
    • 用户名/密码:设备的国标认证信息
  3. 点击"保存"并等待设备注册上线

设备列表管理界面

注意:设备注册可能需要1-2分钟时间,若长时间未上线,请检查网络连接和设备配置。

3.3 视频功能验证

设备上线后,测试核心视频功能:

  1. 实时预览:点击设备后的"预览"按钮,查看实时视频流
  2. 云台控制:在预览界面测试PTZ控制功能
  3. 录像回放:配置录像计划后,测试历史录像回放功能

云镜录像管理界面

四、高级配置

4.1 级联部署设置

wvp-GB28181-pro支持多级平台级联,实现大规模视频监控网络:

  1. 进入"国标级联" → "上级平台"页面
  2. 点击"添加"按钮,配置上级平台信息:
    • 平台名称:上级平台标识
    • SIP服务器地址:上级平台IP
    • SIP服务器端口:通常为5060
    • 平台编码:上级平台分配的编码
    • 认证密码:级联认证密码
  3. 保存配置并检查连接状态

级联平台列表界面

为什么需要级联部署?在大型监控系统中,级联部署可以实现区域管理、负载分担和容灾备份,提高系统可靠性和扩展性。

4.2 录像存储配置

系统支持本地存储和云存储两种录像方式:

  1. 本地存储配置:

    • 修改ZLMediaKit配置文件,设置录像路径
    • 确保磁盘空间充足,建议使用独立磁盘存储录像
  2. 云存储配置:

    • 进入系统"云录像"页面
    • 配置云存储参数(如S3兼容存储)
    • 设置录像上传策略
点击展开录像存储优化建议
  • 定期清理过期录像,建议保留30天内的录像
  • 配置录像文件分片,避免单个文件过大
  • 重要录像配置多副本存储,提高数据安全性

4.3 故障诊断流程

当系统出现问题时,可按照以下流程排查:

问题现象 → 查看服务状态 → 检查日志 → 定位问题组件 → 分析原因 → 解决问题

常见问题处理:

  1. 设备注册失败

    • 检查网络连通性:ping 设备IP
    • 检查SIP端口是否开放:telnet 设备IP 5060
    • 核对设备编码和密码
  2. 视频无法播放

    • 检查媒体服务状态
    • 查看ZLMediaKit日志,确认是否收到流
    • 验证防火墙配置,确保媒体端口开放
  3. 录像文件缺失

    • 检查磁盘空间:df -h
    • 查看录像计划配置
    • 检查ZLMediaKit录像配置

级联部署状态验证

五、生产环境部署 checklist

部署到生产环境前,请确认以下事项:

  • [ ] 修改默认管理员密码
  • [ ] 配置HTTPS加密传输
  • [ ] 设置数据库定期备份
  • [ ] 配置防火墙,只开放必要端口
  • [ ] 设置服务器时间同步(NTP)
  • [ ] 调整JVM内存参数,优化性能
  • [ ] 配置监控告警系统
  • [ ] 制定应急预案和回滚方案

六、性能调优方向

根据实际使用场景,可从以下方面进行性能优化:

  1. 数据库优化

    • 配置合适的连接池大小
    • 对频繁查询的表添加索引
    • 考虑主从分离,提高读性能
  2. 媒体服务优化

    • 根据并发量调整ZLMediaKit的worker数量
    • 配置合适的缓存大小
    • 考虑使用GPU加速视频编码
  3. 系统资源优化

    • 为各容器配置合理的CPU和内存限制
    • 使用性能监控工具识别瓶颈
    • 考虑使用分布式部署,分担负载

通过以上步骤,您已完成wvp-GB28181-pro视频平台的容器化部署。该方案具有环境隔离、快速部署、易于维护和扩展性强等优势,能够满足各类视频监控场景需求。建议在实际应用中根据具体需求进行定制化配置和优化。

登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起