ruoyi-wvpruoyi-wvp
首页
文档
演示
💖赞助💖
哔哩哔哩
  • gitee
  • github
  • gitcode
首页
文档
演示
💖赞助💖
哔哩哔哩
  • gitee
  • github
  • gitcode
  • 文档

    • 介绍
    • 快速开始
    • 功能预览
    • 视频教程
    • 快速部署
    • 更新日志
  • 电子地图
  • 工作台
  • 大屏
  • 小程序
  • 功能和使用

    • 接入设备
    • 国标设备
    • 推流列表
    • 拉流代理
    • 云端录像
    • 节点管理
    • 通道管理
    • 国标级联
    • 录像计划
    • 行政分组
    • 分配监控
    • 语音对讲
  • onvif协议

    • 设备管理
  • ISUP协议

    • 设备管理
  • RTSP协议

    • 设备管理
  • 其他

    • 常见问题
    • 捐赠支持
    • 免责声明
    • 反馈bug
    • 如何参与开发

快速部署

准备工作

JDK >= 1.8 (推荐1.8版本)
Mysql >= 5.7.0 (推荐5.7版本)
Redis >= 3.0
Maven >= 3.0
Node >= 12
ZLMediaKit 建议使用稳定版本

修改配置文件

  • 修改application-druid.yml下的mysql连接配置
spring:
    datasource:
        type: com.alibaba.druid.pool.DruidDataSource
        driverClassName: com.mysql.cj.jdbc.Driver
        druid:
            # 主库数据源
            master:
                url: jdbc:mysql://127.0.0.1:3306/ry-wvp?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8&rewriteBatchedStatements=true&allowMultiQueries=true
                username: root  # 数据源账号
                password: root  # 数据源密码
  • 修改application.yml下的redis配置、zlm配置、isup配置
spring:
  redis:
    # 地址
    host: localhost
    # 端口,默认为6379
    port: 6379
    # 数据库索引
    database: 8
    # 密码
    password:
    # 连接超时时间
    timeout: 10s

# 作为28181服务器的配置
sip:
  # [可选] 28181服务监听的端口
  port: 8116
  # 根据国标6.1.2中规定,domain宜采用ID统一编码的前十位编码。国标附录D中定义前8位为中心编码(由省级、市级、区级、基层编号组成,参照GB/T 2260-2007)
  # 后两位为行业编码,定义参照附录D.3
  # 3701020049标识山东济南历下区 信息行业接入
  # [可选]
  domain: 4101050000
  # [可选]
  id: 41010500002000000001
  # [可选] 默认设备认证密码,后续扩展使用设备单独密码, 移除密码将不进行校验
  password: 12345678
  # 是否存储alarm信息
  alarm: false   
    
#zlm 默认服务器配置
media:
  id: zlmediakit-local #zlm服务器的mediaServerId
  # [必须修改] zlm服务器的内网IP
  ip: 192.168.**.**
  # [必须修改] zlm服务器的http.port
  http-port: 8092
  # [必选选] zlm服务器的secret
  secret: TWSYFgYJOQWB4ftgeYut8DW4wbs7pQnj
  # 启用多端口模式, 多端口模式使用端口区分每路流,兼容性更好。 单端口使用流的ssrc区分, 点播超时建议使用多端口测试
  rtp:
    # [可选] 是否启用多端口模式, 开启后会在portRange范围内选择端口用于媒体流传输
    enable: true
    # [可选] 在此范围内选择端口用于媒体流传输, 必须提前在zlm上配置该属性,不然自动配置此属性可能不成功
    port-range: 40000,40300 # 端口范围
    # [可选] 国标级联在此范围内选择端口发送媒体流,
    send-port-range: 40000,40300 # 端口范围
    
# ISUP配置(付费版才有)
isup:
  #注册服务器监听地址(服务器本地地址)
  IP: 192.168.**.**
  route: Isup
  cmsServer:
    Port: 7660
  # 取流服务器地址端口(公网对接填入公网地址和端口)
  smsServer:
    Port: 7665
    #取流服务器监听地址端口(服务器本地地址)
    ListenIP: 192.168.**.**
    ListenPort: 7665
  # ISUP5.0登录秘钥
  isupKey: 12345678

部署系统

ZLMediaKit部署-移步文档

WebRTC-Streamer部署(付费版才需要)

  1. 拉取WebRTC-Streamer镜像并且创建容器
 docker pull mpromonet/webrtc-streamer
 
 docker run -id -p 8000:8000 --name webrtc-streamer -it mpromonet/webrtc-streamer

ruoyi-wvp后台部署

  1. 打开idea找到maven项目,右键点击选择maven->package,执行打包操作

VuePress Logo

  1. 打包成功后,在target目录下找到ruoyi-admin.jar文件

VuePress Logo

  1. ruoyi-admin.jar文件上传到宝塔,并且创建ruoyi-isup文件夹,在ruoyi-isup文件夹下创建linux-lib(注意:付费版才要创建)

VuePress Logo

VuePress Logo

  1. 把ruoyi-isup下linux-lib全部上传宝塔linux-lib文件夹中 (注意:付费版才要上传)

VuePress Logo

VuePress Logo

  1. 在宝塔中创建ruoyi-admin网站,并且配置ruoyi-admin.jar文件,点击确定并查看日记,出现以下内容就代表启动成功

VuePress Logo

出现这个就代表启动成功

(♥◠‿◠)ノ゙  ruoyi-wvp启动成功   ლ(´ڡ`ლ)゙
                         _
                        (_)
  _ __ _   _  ___  _   _ _ ________      ____   ___ __
 | '__| | | |/ _ \| | | | |______\ \ /\ / /\ \ / / '_ \
 | |  | |_| | (_) | |_| | |       \ V  V /  \ V /| |_) |
 |_|   \__,_|\___/ \__, |_|        \_/\_/    \_/ | .__/
                    __/ |                        | |
                   |___/                         |_|

前端部署

  1. 当项目开发完毕,只需要运行一行命令就可以打包你的应用
# 打包正式环境
npm run build:prod

# 打包预发布环境
npm run build:stage

构建打包成功之后,会在根目录生成 dist 文件夹,里面就是构建打包好的文件,通常是 .js 、.css、index.html 等静态文件。

通常情况下 dist 文件夹的静态文件发布到你的 nginx 或者静态服务器即可,其中的 index.html 是后台服务的入口页面。

  1. Nginx配置
worker_processes  1;

events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;

    server {
        listen       80;
        server_name  localhost;
		charset utf-8;

		location / {
            root   /home/ruoyi/projects/ruoyi-ui;
			try_files $uri $uri/ /index.html;
            index  index.html index.htm;
        }
		
		location /prod-api/ {
			proxy_set_header Host $http_host;
			proxy_set_header X-Real-IP $remote_addr;
			proxy_set_header REMOTE-HOST $remote_addr;
			proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
			proxy_pass http://localhost:8080/;
		}

		# springdoc proxy
		location ~ ^/v3/api-docs/(.*) {
			proxy_pass http://localhost:8080/v3/api-docs/$1;
		}

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }
}
  1. 建议开启Gzip压缩,开启后可以加快传输速度,提升用户体验

在http配置中加入如下代码对全局的资源进行压缩,可以减少文件体积和加快网页访问速度。

# 开启gzip压缩
gzip on;
# 不压缩临界值,大于1K的才压缩,一般不用改
gzip_min_length 1k;
# 压缩缓冲区
gzip_buffers 16 64K;
# 压缩版本(默认1.1,前端如果是squid2.5请使用1.0)
gzip_http_version 1.1;
# 压缩级别,1-10,数字越大压缩的越好,时间也越长
gzip_comp_level 5;
# 进行压缩的文件类型
gzip_types text/plain application/x-javascript text/css application/xml application/javascript;
# 跟Squid等缓存服务有关,on的话会在Header里增加"Vary: Accept-Encoding"
gzip_vary on;
# IE6对Gzip不怎么友好,不给它Gzip了
gzip_disable "MSIE [1-6]\.";

常见问题

  1. 如果使用Mac需要修改application.yml文件路径profile
  2. 如果使用Linux 提示表不存在,设置大小写敏感配置在/etc/my.cnf添加lower_case_table_names=1,重启MYSQL服务
  3. 如果提示当前权限不足,无法写入文件请检查application.yml中的profile路径或logback.xml中的log.path路径是否有可读可写操作权限
  4. 如遇到无法解决的问题请到Issues (opens new window)反馈,会不定时进行解答。

遇到问题

  • 微信: ruoyi-wvp888 备注:ruoyi-wvp
  • 微信: qsh-network 备注:ruoyi-wvp
Last Updated:: 6/5/25, 10:06 AM
Contributors: fengcheng
Prev
视频教程
Next
更新日志