软件名称:EasyNVR
操作系统支持:支持飞牛 NAS、群晖 NAS、极空间 NAS、Windows、Linux 等(Docker 部署跨平台)
软件介绍:EasyNVR 是一款 “平民版” 网络录像机,不用花大价钱买硬件 NVR,靠 Docker 就能装在 NAS / 迷你主机上,支持 RTSP/RTMP/ONVIF 等协议,能把市面上 90% 的摄像头 “收编”,录像直接存本地,彻底摆脱厂商的云存储套路,数据全在自己手里。
EasyNVR 的出色功能
- “通吃型” 摄像头管理:不管是小米、海康、乔安还是杂牌摄像头,只要支持 RTSP/ONVIF 协议,都能接入 EasyNVR,不用再装一堆品牌 APP,一个界面搞定所有摄像头的实时监控、录像回放,堪比 “摄像头界的万能遥控器”。
- “不花钱” 的本地存储:告别每月几十块的云存储月租,把录像存到自家 NAS / 硬盘里,想存多久存多久,内存卡坏了、被覆盖的问题直接消失,相当于给监控装了 “永久免费的超大仓库”。
- 傻瓜式操作 + 稳定运行:Docker 一键部署,不用懂复杂代码,NAS 上 7×24 小时跑着不卡顿,就算是数码小白,跟着教程半小时也能搞定,比折腾摄像头原厂设置简单 10 倍。
实用场景
场景 1:家庭看护 —— 告别云存储,娃 / 老人 / 宠物录像想存就存
- 痛点:装了摄像头想看看家里的老人有没有按时吃药、孩子有没有乖乖写作业,结果要么内存卡满了录像被覆盖,要么厂商提示 “开通云存储才能看 7 天前的录像”,每月掏钱像交 “保护费”;多品牌摄像头还要切换不同 APP,麻烦到想摔手机。
- 爽点:用 EasyNVR 把所有家庭摄像头接入 NAS,录像直接存本地,哪怕半年前的录像都能找出来;配合 cpolar 外网访问,下班路上用手机就能看实时画面,周末出门也能随时查,一分钱云存储费都不花,数据还不担心被厂商泄露。
场景 2:小型商铺 —— 外网看监控 + 录像下载,防偷防扯皮
- 痛点:小店装了摄像头,原厂云存储每年几百块,外网看监控还得连店里 WiFi,出门补货时想看看店门有没有关,根本看不了;遇到顾客扯皮(比如说没收到货),想调录像发现内存卡早就覆盖了,有理说不清。
- 爽点:EasyNVR 把录像存到 NAS,随便调任意时间段的录像,还能下载保存当证据;cpolar 穿透后,手机流量就能看实时监控,哪怕在外地进货,也能随时盯店,每年省几百云存储费,还能防偷防扯皮,性价比直接拉满。
cpolar 内网穿透技术带来的便利
-
“打破局域网牢笼”,外网看监控像刷朋友圈一样简单: EasyNVR 装在 NAS 上本来只能在自家 WiFi 里看,用 cpolar 内网穿透后,不管你在公司、在外地旅游,还是在楼下买菜,只要有网,打开手机浏览器就能访问 EasyNVR 界面,看实时监控、回放录像,不用配置复杂的路由器端口映射,小白也能一键搞定。
-
固定域名不翻车,不用天天记新地址: cpolar 免费版就能生成外网地址,要是想更方便,升级后能弄个固定二级子域名,不用每天面对随机变化的地址,分享给家人 / 员工也不用反复发新链接,输入一次就能永久访问,比记手机号还简单。
-
全平台适配,在哪看都顺手: cpolar 支持 Windows、Linux、NAS 等所有系统,和 EasyNVR 完美适配,不管你用手机、电脑、平板,只要能打开浏览器,就能看监控,不用装额外 APP,老人孩子都能上手。
-
安全又稳定,数据不跑偏: cpolar 的穿透隧道是加密的,不用担心监控画面被泄露;而且稳定性拉满,哪怕家里网络偶尔波动,重新连上网后,外网访问地址立刻恢复,不会耽误看监控,比原厂 APP 的外网访问还靠谱。
总结
EasyNVR 就像给你的摄像头装了个 “私人管家”,把多品牌设备管得服服帖帖,还把录像存到自家地盘,彻底断了厂商赚云存储月租的念想;而 cpolar 则是这个管家的 “通行证”,让你不管在哪,都能随时找到这个 “管家”,看监控、调录像全自由。
不用花大价钱买高端 NVR,不用每月交冤枉的云存储费,几十分钟就能搭好属于自己的私有监控系统,家庭看护、小店盯店都能用,数据在自己手里,心里才踏实。与其被厂商的云存储 “绑架”,不如用 EasyNVR+cpolar 把监控的主动权拿回来!
教程准备好了,快去安装吧!
这篇文章,就是我利用飞牛 NAS,通过 Docker 部署 EasyNVR,把家中摄像头录像统一存进本地 NAS 的一次实践记录。
1 什么是EasyNVR?
EasyNVR 是一款专业的软件型网络录像机(Network Video Recorder,NVR),用于集中管理和录像多路网络摄像头的视频流。它可以替代摄像头厂商提供的云存储服务,将录像统一存储在本地 NAS 或服务器上,实现完全的本地化管理。
EasyNVR 的核心功能包括:多摄像头接入,支持 RTSP、RTMP、ONVIF 等标准协议,并能够接入不同品牌和型号的摄像头,实现统一管理;本地录像存储,视频数据直接写入 NAS 或本地服务器,不依赖厂商云服务,从而避免长期订阅费用,同时支持长期录像和循环覆盖策略;实时监控与历史回放,通过 Web 界面集中管理所有摄像头,可以查看实时画面、快速定位历史录像,并支持多路同步播放和时间轴浏览;稳定运行,可在 NAS、迷你主机或家用服务器上 7x24 稳定运行,Docker 部署支持跨平台、快速安装和升级。
为了更直观理解,下面给出与摄像头官方 App 的对比:
| 对比项 | 官方 App | EasyNVR |
|---|---|---|
| 录像存储位置 | 云端 / 内存卡 | 本地 NAS / 服务器 |
| 是否依赖云服务 | 是 | 否 |
| 是否需要订阅 | 通常需要 | 不强制 |
| 多品牌摄像头管理 | 不支持 | 支持 |
| 数据控制权 | 厂商 | 用户自己 |
EasyNVR 允许用户完全掌控摄像头录像数据,同时实现多品牌摄像头的统一管理和长期本地存储,非常适合家庭或小型办公环境。
2 飞牛Nas中部署EasyNVR
本教程以Windows上虚拟机中部署的飞牛Nas为例,其他的Nas系统(如:群晖Nas、极空间Nas等)基本一致。首先,确保你的Nas系统开放了SSH远程,以飞牛Nas为例:
打开以后,在电脑上摁Win+R键,然后输入cmd回车,打开命令提示符终端,输入如下命令连接你的Nas系统终端:
ssh 飞牛用户名@你的Nas系统IP地址
连接上以后,接着使用如下命令切换root用户:
sudo -i
如下图,输入飞牛用户名的密码,即可切换至root用户(输入密码不会显示):
切换完成后,执行下面的 Docker 一键部署命令,即可快速部署 EasyNVR 服务:
docker run -d --name easynvr --restart always --network host --log-opt max-size=50M -v "$PWD/configs:/app/configs" -v "$PWD/logs:/app/logs" -v "$PWD/temporary:/app/temporary" -v "$PWD/r:/app/r" -v "$PWD/stream:/app/stream" registry.cn-shanghai.aliyuncs.com/rustc/easynvr_amd64:latest
执行完成后,如果终端返回一串容器 ID,说明 EasyNVR 已经成功在后台运行。
如果你希望 EasyNVR 录制的视频能够直接出现在飞牛相册中统一管理和查看(可选但强烈推荐),可以在部署时,将 EasyNVR 的录像目录映射到飞牛相册的实际存储路径。像如下图一样:
以飞牛默认相册路径为例:
/vol1/1000/Photos
建议在相册目录下单独创建一个 EasyNVR 录像目录,避免和日常照片混在一起:
mkdir -p /vol1/1000/Photos/EasyNVR
最终完整命令如下:
docker run -d --name easynvr --restart always --network host --log-opt max-size=50M -v "$PWD/configs:/app/configs" -v "$PWD/logs:/app/logs" -v "$PWD/temporary:/app/temporary" -v /vol1/1000/Photos/EasyNVR:/app/r -v "$PWD/stream:/app/stream" registry.cn-shanghai.aliyuncs.com/rustc/easynvr_amd64:latest
这样一来,所有摄像头的录像文件都会被直接写入飞牛相册目录,既不用内存卡,也不依赖厂商云存储,实现真正的本地集中存储和统一管理。
接着使用如下docker命令,确认是否启动:
docker ps
可以看到,状态为UP,启动成功!让我们浏览器访问测试一下:
http://你的飞牛NAS系统IP地址:10000
成功访问到页面啦,输入用户名和密码admin,让我们登录看一下:
成功进入EasyNVR的首页啦,这里选择简体语言,然后下一步:
继续下一步即可:
然后到最后一步骤,设置一个新的账号名称和密码,就初始化完成啦:
3 配置监控接入到EasyNVR
前面已经介绍了EasyNVR支持接入 RTSP、RTMP、ONVIF 等标准协议,并能够接入不同品牌和型号的摄像头,实现统一管理。简单说一下区别:RTSP 是纯视频流协议,只能拉流观看,不支持云台控制;RTMP 主要用于推流场景,同样不支持设备控制;而 ONVIF 是一套完整的设备管理标准,除了拉流外还支持云台控制、设备发现、参数配置等功能,如果你的摄像头支持 ONVIF,优先推荐使用它接入。
3.1 固定摄像头IP
由于一般的路由器默认都是通过 DHCP 动态分配 IP 地址,摄像头每次重启或网络波动后,IP 可能会发生变化。一旦 IP 变了,EasyNVR 就会连不上摄像头,导致监控画面丢失。所以在接入之前,建议先给摄像头固定一个静态 IP。
设置方法有两种:
- 摄像头端设置(部分摄像机支持):登录摄像头的 Web 管理界面,在网络设置中将 IP 获取方式从"自动获取"改为"手动设置",填写一个局域网内未被占用的 IP(如
192.168.1.100)、子网掩码(255.255.255.0)和网关(路由器 IP) - 路由器端绑定:在路由器后台找到 DHCP 静态绑定(或 IP-MAC 绑定)功能,将摄像头的 MAC 地址与一个固定 IP 绑定
推荐使用第一种方式,更加稳定可靠。设置完成后,记录下这个固定 IP,后面添加设备时会用到。
我这里使用的监控设备为乔安,它不支持将自己设置为静态IP,所以需要登录到路由器后台,找到摄像机IP,做IP-MAC绑定,如:
这样就做好IP和Mac地址绑定啦,不同的路由器页面不同,可以搜索对应品牌设置方法。
3.2 获取流协议地址
可以看到我这台设备的IP地址为:
192.168.50.127
浏览器直接访问这个地址,登录到摄像机后台,可以看到RTSP的开关和认证:
RTSP的协议地址一般结构为(最好的办法是可以直接询问客服,如果支持流协议,客服会给您提供):
# rtsp://用户名:密码@摄像机IP地址/live/ch00_0
rtsp://admin:admin123@192.168.50.127/live/ch00_0
我们可以拿相关支持播放流的程序进行测试,比如PotPlayer进行播放:
可以看到,能够成功的获取到监控中的画面了!代表这个流协议地址正确!
3.3 将流协议地址接入到EasyNVR
在前面,我们已经成功的给摄像头配置了静态IP,这样我们的RTSP流协议地址就不会发生变化了。接着,我们将这个RTSP流协议地址接入到EasyNVR中。
首先打开EasyNVR的首页,然后选择设备列表菜单,点击添加按钮:
这里由于是RTSP协议地址,所以选择PULL,下面也可以看到提示为接入设备RTSP、HTTP、TCP实时流,然后填写好拉流地址,点击确定:
点击确定后,就可以看到你的设备添加上来了,可以看到在线状态:
点击通道列表图表,点击进入,然后可以看到录像计划显示为未录像,这里直接将其设置为,这样就会一直录制啦:
点击下方的直播中按钮,即可进入到观看页面:
如下图所示:
可以看到,该直播预览页面集成了多协议实时播放、线路切换、云台控制与参数可视化等能力,用户可根据实际场景在 WebRTC、HTTP-FLV、RTMP、RTSP 等协议间自由切换以兼顾延迟与兼容性;在视频播放的同时,页面还实时展示分辨率、编码格式、传输方式、码率等关键流媒体信息,便于调试与排障;若视频流协议源本身支持云台控制,还可直接在页面中完成方向控制、变倍与速度调节,实现从预览到运维的一体化操作。
3.4 查看录像回放
前面设置好了录像计划,设置为每天,设置好后就会即刻开始录像。我们回到首页,选择菜单的录像回放:
我们直接点击查看图表,即可进来回放页面了:
不仅回放功能,还支持选择指定时间段进行下载:
如果你按照前面的飞牛相册路径映射,你还可以直接在飞牛相册中查看回放:
好啦,基本设置就完成啦,EasyNVR还拥有更多功能值得你去探索!
4 穿透EasyNVR实现公网访问
到这里,EasyNVR 已经在飞牛 NAS 上跑起来了,录像也都存在本地硬盘上,彻底告别了云存储月租费。但问题来了:虽然各家摄像头 APP 也能看实时画面,但想回看历史录像就要交钱,而且家里几个不同品牌的摄像头还得装好几个 APP,管理起来很麻烦。
有了 cpolar 内网穿透,这些问题就迎刃而解了。只需简单配置,就能让 EasyNVR 通过公网地址随时随地访问——不仅能看实时画面,更重要的是免费回放本地存储的所有录像。而且一个链接就能分享给家人,不用每个人都装 APP、注册账号,浏览器打开就能看。
4.1 什么是cpolar?
- cpolar 是一款内网穿透工具,可以将你在局域网内运行的服务(如本地 Web 服务器、SSH、远程桌面等)通过一条安全加密的中间隧道映射至公网,让外部设备无需配置路由器即可访问。
- 广泛支持 Windows、macOS、Linux、树莓派、群晖 NAS 等平台,并提供一键安装脚本方便部署。
4.2 安装cpolar
在前面连接的飞牛终端中输入如下命令,一键安装cpolar:
sudo curl https://get.cpolar.sh | sh
安装完成后,执行下方命令查看cpolar服务状态:(如图所示即为正常启动)
sudo systemctl status cpolar
4.3 注册及登录cpolar web ui管理界面
访问cpolar官网,点击免费注册按钮,进行账号注册
进入到如下的注册页面进行账号注册:
注册完成后,在浏览器中输入飞牛NAS的IP地址+9200端口访问 web ui管理界面:
http://192.168.184.137:9200/
输入刚才注册好的cpolar账号登录即可进入后台页面:
4.4 穿透EasyNVR的WebUI界面
点击左侧菜单栏的隧道管理,展开进入隧道列表页面,页面下默认会有 2 个隧道:
- ssh隧道,指向22端口,tcp协议
- website隧道,指向8080端口,http协议(http协议默认会生成2个公网地址,一个是http,另一个https,免去配置ssl证书的繁琐步骤)
点击编辑website的隧道,这里设置名称为easynvr方便辨识,然后本地地址填写10000端口系统的访问地址,地区这里选择的China Top,然后点击更新:
接着,点击左侧菜单的状态菜单,接着点击在线隧道列表菜单按钮,可以看到有2个easynvr的隧道,一个为http协议,另一个为https协议:
接下来在浏览器中访问easynvr隧道生成的公网地址,这里以https为例:
可以看到成功的访问到EasyNVR的页面啦!不过随机域名方式适合预算有限的用户。使用此方式时,系统会每隔 24 小时 左右自动更换一次域名地址。对于长期访问的不太友好,但是该方案是免费的,如果您有一定的预算,可以查看大纲5 的固定域名方式,且访问更稳定哦。
5 固定二级子域名
随机域名虽然免费,但每 24 小时左右会自动更换一次,每次变化都要重新记地址、重新分享链接,用起来确实不太方便。如果你希望拥有一个固定不变、简短易记的专属域名,只需升级 cpolar 任意付费套餐,即可配置固定二级子域名,彻底告别域名频繁变化的烦恼。下面我们来看看如何操作。
首先,进入官网的预留页面:
https://dashboard.cpolar.com/reserved
然后,选择预留菜单,即可看到保留二级子域名项,填写其中的地区、名称、描述(可不填)项,然后点击保留按钮,操作步骤图如下:
列表中显示了一条已保留的二级子域名记录:
- 地区:显示为China Top。
- 二级域名:显示为easynvr。
注:二级域名是唯一的,每个账号都不相同,请以自己设置的二级域名保留的为主
接着,进入侧边菜单栏的隧道管理下的隧道列表,可以看到名为easynvr的隧道:
点击编辑按钮进入编辑页面,修改域名类型为二级子域名,然后填写前面配置好的子域名,点击更新按钮:
接着来到状态菜单下的在线隧道列表可以看到隧道名称为easynvr的公网地址已经变更为二级子域名+固定域名主体及后缀的形式了:
这里以https访问测试一下:
访问成功!
总结
从 Docker 一键部署 EasyNVR,到摄像头固定 IP 配置、RTSP 流接入,再到用 cpolar 将监控画面稳定暴露到公网——我们把原本需要交云存储费才能实现的"随时随地看监控",变成了完全自主可控的本地方案。
- 彻底告别云存储费:录像直接存在飞牛 NAS 本地硬盘,不依赖厂商云服务,想存多久存多久
- 多品牌统一管理:家里不同牌子的摄像头,一个 EasyNVR 界面全搞定,不用装一堆 APP
- 历史录像免费看:本地存储的录像随时回放、下载,再也不用为"回看要付费"买单
- 一键分享给家人:cpolar 生成的公网链接直接分享,不用每个人都装 APP、注册账号,浏览器打开就能看
这不仅是一份部署教程,更是一套让家用摄像头真正"为你所用"的完整方案。无论是想省下云存储费,还是想统一管理家里的监控设备,这套方案都能让你在几十分钟内搭建好自己的私有监控平台。现在就动手试试吧!