Skip to content

DOWNLOAD

UVP-GB28181 下载

完全开源,让国标视频接入更清晰、更自主。

v1.1.13

最新版本2026-10-22

更新说明

  • 地图左栏改为「可定位通道树」:只列出设置了位置的通道,按设备分组,点通道直接定位到点位并弹出卡片,点设备一次看全该设备的通道;顶部可按部门或业务分组限定范围,底部提示还有多少通道没设位置。
  • 地图点位卡片动作重排:播放视频、查看轨迹、设置位置、通道详情四颗按钮各用一色,一眼分清「播 / 看 / 改 / 跳」。
  • 地图上的播放改为贴着地图的小窗,不再整页弹窗;小窗里可以一键进入播放控制台,通道离线时播放按钮直接置灰。
  • 「设为默认中心」改为两步操作:先点按钮进入选点状态,在地图上点一下确认位置,再保存。取消或按 Esc 不写任何数据。
  • 设备地图支持按时间播放移动轨迹,可看速度与轨迹点,支持一键回到默认中心。
  • 媒体节点支持在页面上直接修改 WebRTC 端口,并写回部署端口规划,不用再手工改配置文件。
  • 修复登录后整站打不开的问题:接口基址结尾多一个斜杠时会拼出 //api/...,浏览器把 api 当成主机名,页面所有请求失败。现在基址统一去掉结尾斜杠。
  • 修复录像查询与回放失败时只弹一串英文报错的问题,改为中文原因提示。
  • 修复回放通道参数被当成数字解析、20 位国标编码末位被抹成 0 导致回放找不到通道的问题。
  • 修复能力授权保存偶发失败(返回 503)的问题:权限校验移出事务,避免单连接数据库自锁,新建的第三方客户端现在能正常授权。
  • 修复抓拍图的设备与通道归属显示成数据库主键的问题,改为按编码与名称双路回退。
  • 修复点播首帧判定过早、画面还没到就认为已出图的问题;播放器资源改为按内容版本化,升级后不会再残留旧播放器缓存。
  • 修复服务升级页首屏探测失败时反复弹出同一个全局提示的问题。
  • 交付包内的流媒体服务出厂即关闭目录浏览,并在每次启动时强制保持关闭,避免同网段用户在未登录状态下浏览、下载录像与截图目录。
  • 存量环境升级会补齐「固件仓库」菜单与对应权限,此前升级上来的环境该页面会提示找不到。
  • 许可证与第三方组件声明整理为根目录的第三方声明文件,README 不再保留上游具体团队署名。
  • 升级前请停止服务,并备份 data 与 config 目录。
  • 从 1.1.12 升级不需要改 config/config.env;WebRTC 端口如在页面上改过,会同步写回端口规划文件。
  • 地图「设为默认中心」的用法变了:先进入选点、在地图上点位置,再保存。
  • 安装包内置的 ffmpeg 仍为精简版(只保留抓拍与转推用到的编解码),功能与上一版一致。

下载地址

校验信息(SHA-256)
  • uvp-gb28181-linux-amd64-1.1.13.tar.gza78cedc23403f98db99fc18f56f71c892ba470fd599714498f804840826e8277
  • uvp-gb28181-linux-arm64-1.1.13.tar.gz18c147bcd7ac417382d7dd116ef020c04fd7526e5db684dbe85adffdd4f4fa7c
  • uvp-gb28181-windows-amd64-1.1.13.zip35414c304e6a2a1a0c1f7e7489c8ffabd84015b8b19617b55bb092f8f293295e

Linux 执行 sha256sum 文件名;Windows PowerShell 执行 Get-FileHash 文件名 -Algorithm SHA256。

DEPLOY

部署教程

下载到的「独立部署包」就是绿色包:数据库 SQLite、缓存 Redis、流媒体 ZLMediaKit、Web 服务器 nginx 全部随包自带,目标机不需要预装任何运行时和依赖,解压后一条命令即可启动。下面按平台选一个页签照着做,最后附有安装包目录说明。

想要逐步截图版?看 Linux 部署手册 与 Windows 部署手册 。

  • 解压即用
  • 不依赖 Docker / Java / Python
  • 自带自签证书
  • 配置与数据可整体迁移

环境要求x86_64 或 aarch64,glibc 2.28 及以上(银河麒麟 V10 SP2、统信 UOS、openEuler 等国产系统均可)。不需要 Python、OpenSSL、Java、Docker,普通用户身份即可运行,只有注册开机自启才需要 root。

  1. 1

    解压到目标目录

    解压出来的目录就是「包根」,后面的命令都在这个目录里执行。arm64 机器把文件名里的 amd64 换成 arm64。

    bash
    tar -xzf uvp-gb28181-linux-amd64-1.1.13.tar.gz
    cd uvp-gb28181-linux-amd64-1.1.13
  2. 2

    启动服务

    首次启动会自动建库并初始化配置(约 1 分钟,过程中会打印进度),结束后打印访问地址与端口规划。start 是幂等的,重复执行只会把没起来的组件补起来。

    bash
    ./uvp-gb28181-ctl.sh start
  3. 3

    打开管理页面

    浏览器访问 http://<本机IP>:51000,初始账号 admin、口令 123456,登录后系统会强制要求修改口令。默认是明文 HTTP;要用 HTTPS 到「系统设置 → 系统配置 → HTTPS」打开开关即可,证书已随包内置。

  4. 4

    放行防火墙(局域网访问)

    端口是连续的 51000-51064,一条规则即可覆盖。start 收尾会按本机实际端口把命令打印出来,直接照抄即可。

    bash
    # firewalld(银河麒麟 / openEuler / RHEL 系)
    sudo firewall-cmd --permanent --add-port=51000-51064/tcp
    sudo firewall-cmd --permanent --add-port=51004-51064/udp
    sudo firewall-cmd --reload
    
    # ufw(Ubuntu / 统信 UOS)
    sudo ufw allow 51000:51064/tcp
    sudo ufw allow 51004:51064/udp
  5. 5

    注册开机自启(可选)

    注册成 systemd 服务后,服务名为 uvp-gb28181,可用 systemctl status uvp-gb28181 查看。加 --now 会先停掉手工实例再接管。

    bash
    sudo ./uvp-gb28181-service-install.sh --now

安装包目录说明

解压出来的目录就是「包根」。除了 bin/、vendor/ 是程序本体,其余日常会碰到的就是下面这些 —— 备份和迁移时只需要 data/ 和 config/。

  • uvp-gb28181-ctl.sh唯一入口:启动、停止、重启、查看状态、重置口令
  • uvp-gb28181-service-install.sh注册成 systemd 服务、开机自启(可选,需要 root)
  • uvp-gb28181-service-uninstall.sh卸载服务注册,只动服务不动数据
  • bin/平台自己的程序:uvp-server(后端)、uvp-setup(建库 / 改端口 / 重置口令)、updater/
  • vendor/redis/自带 Redis,不用另装;AOF 落在 data/ 里
  • vendor/zlm/自带流媒体服务 ZLMediaKit,负责 RTSP / RTMP / HLS 转发
  • vendor/nginx/自带 Web 服务器:前端页面与 HTTPS 终止
  • config/config.yml(后端配置)+ config.env(端口段、环境变量与密钥)
  • data/uvp.db(数据库)+ Redis AOF + secrets/(运行期密钥)
  • logs/全部日志:app/ 业务日志、zlm/ 流媒体日志、nginx.log
  • run/运行期文件(pid、防火墙代理 socket),重启即重建
  • resource/前端产物 + 建库脚本 baseline.sql + 内置自签证书 cert/

常用命令

  • 启动./uvp-gb28181-ctl.sh start
  • 停止./uvp-gb28181-ctl.sh stop
  • 重启./uvp-gb28181-ctl.sh restart
  • 查看状态./uvp-gb28181-ctl.sh status
  • 重置登录口令./uvp-gb28181-ctl.sh reset-password
  • 备份只需拷两个目录:data/(数据库、Redis AOF、运行期状态)和 config/(全部配置与密钥)。停服后 tar -czf uvp-backup-$(date +%F).tar.gz data config 即可。
  • 升级:解压新包覆盖原目录,data/、config/ 会保留,然后 restart。不要删除这两个目录,删了等于换一台新机器。
  • 迁移:把 data/ 和 config/ 拷到新机器,装同版本包后 start。跨平台迁移要同时改 config/config.env 的端口段(Linux 51000 段、Windows 15500 段)。
常见问题(5)
页面打不开
先执行 ./uvp-gb28181-ctl.sh status,看四项是否都「运行中」。都正常却打不开,以 start 打印的地址为准:默认是 http:// + 51000,只有在系统配置里开过 HTTPS 才是 https:// + 51001;写成后端端口 51002 也不对。只有「管理页面」没起来时看 logs/nginx.log。
登录页报 no such table
库里没建好,多半是首次启动中途被打断。直接重跑 ./uvp-gb28181-ctl.sh start(检测到库不完整会自动重建);仍不行就停服后删掉 data/uvp.db 再启动 —— 只在还没录入业务数据时这么做,删库等于清空业务数据。
忘记登录口令
平台没有自助找回。执行 ./uvp-gb28181-ctl.sh reset-password 把口令还原成出厂口令,并标记「首次登录必须改密」,下次登录会强制设置新口令。只动这一个账号,不碰设备、通道、录像数据。
提示端口已被占用
按提示先 stop;仍被占用就是别的软件在用。打开 config/config.env 最上面的端口区(16 个端口都能改),改完 restart,再按新打印的防火墙命令放行。
提示缺少执行权限(Permission denied)
解压工具丢了可执行位,执行一次 chmod +x uvp-gb28181-ctl.sh bin/uvp-setup bin/uvp-server updater/uvp-updater,或者直接用 bash uvp-gb28181-ctl.sh start。

最后更新: