原文链接:家用摄像头告别云存储费!飞牛 NAS + Docker 玩转 EasyNVR - cpolar 极点云官网

image-20251218155131232

前言

在现代生活中,很多人家里多少都会装 1~2 个摄像头。 本来是为了看看家里情况、照看老人和孩子,结果用着用着才发现——真正想看回放的时候,却要额外掏钱买云存储。刚装的时候,大多数人都会先插一张内存卡,想着本地存点录像就够用了。 但实际用下来才发现,内存卡容量有限,录像留不了几天,而且长时间循环写入也容易出问题。 等哪天真需要翻回之前的录像,要么已经被覆盖了,要么卡直接读不出来,这时候厂商往往就会提示你——开通云存储,录像才能保存得更久、更稳定

如果你手上刚好有一台 NAS,其实完全没必要走到这一步。

与其反复折腾内存卡,或者长期订阅云存储,不如把这些录像直接交给 NAS 来保存。这样就不用折腾内存卡,也不用交云存储费,把所有摄像头的录像稳定地存到自己家里的 NAS 里

这篇文章,就是我利用飞牛 NAS,通过 Doc

image-20251218105203364

中摄像头录像统一存进本地 NAS 的一次实践记录。

1 什么是EasyNVR?

image-20251218105203364

EasyNVR 是一款专业的软件型网络录像机(Network Video Recorder,NVR),用于集中管理和录像多路网络摄像头的视频流。它可以替代摄像头厂商提供的云存储服务,将录像统一存储在本地 NAS 或服务器上,实现完全的本地化管理。

EasyNVR 的核心功能包括:多摄像头接入,支持 RTSP、RTMP、ONVIF 等标准协议,并能够接入不同品牌和型号的摄像头,实现统一管理;本地录像存储,视频数据直接写入 NAS 或本地服务器,不依赖厂商云服务,从而避免长期订阅费用,同时支持长期录像和循环覆盖策略;实时监控与历史回放,通过 Web 界面集中管理所有摄像头,可以查看实时画面、快速定位历史录像,并支持多路同步播放和时间轴浏览;稳定运行,可在 NAS、迷你主机或家用服务器上 7×24 稳定运行,Docker 部署支持跨平台、快速安装和升级。

为了更直观理解,下面给出与摄像头官方 App 的对比:

对比项

官方 App

EasyNVR

录像存储位置

云端 / 内存卡

本地 NAS / 服务器

是否依赖云服务

是否需要订阅

通常需要

不强制

多品牌摄像头管理

不支持

支持

数据控制权

厂商

用户自己

EasyNVR 允许用户完全掌控摄像头录像数据,同时实现多品牌摄像头的统一管理和长期本地存储,非常适合家庭或小型办公环境。

2 飞牛Nas中部署EasyNVR

本教程以Windows上虚拟机中部署的飞牛Nas为例,其他的Nas系统(如:群晖N

image-20251218141410498

本一致。首先,确保你的Nas系统开放了SSH远程,以飞牛Nas为例:

image-20251218141410498

打开以后,在电脑上摁Win+R键,然后输入cmd回车,打开命令提示符终端,输入如下命令连接

image-20251218141451997
ssh 飞牛用户名@你的Nas系统IP地址

Bas

image-20251218141451997
image-20251218141451997

连接上以后,接着使用如下命令切换root用户:

sudo -i

Bash

image-20251218141524973
image-20251218141524973


image-20251218141524973

切换完成后,执行下面的 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

Bash

执行完成后,如果终端返回一串容器 ID,说明 EasyNVR

image-20251218143455324
image-20251218143455324
image-20251218143455324

如果你希望 EasyNVR 录制的视频能够直接出现在飞牛相册中统一管理和查看(可选但强烈推荐),可以在部署时,将 EasyNVR 的录像目录映射到飞牛相册的实际存储路径

image-20251218162932938

像如下图一

image-20251218162932938


image-20251218162932938

以飞牛默认相册路径为例:

/vol1/1000/Photos

Bash

建议在相册目录下单独创建一个 EasyNVR 录像目录,避免和日常照片混在一起:

mkdir -p /vol1/1000/Photos/EasyNVR

Bash

最终完整命令如下:

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

Bash

这样一来,所有摄像头的录像文件都会被直接写入飞牛相册目录,既不用内存卡,也不依赖厂商云存储,实现真正的本地集中存储和统一管理。

接着使用如下docker命令,确认是否启动:

image-20251218143622303
image-20251218143622303
 ps
image-20251218143622303

Bas

image-20251218143622303
image-20251218143622303


可以看到,状态为UP,启动成功!让我们浏览器访问测试一下:

http://你的飞牛
image-20251218143732607

B

image-20251218143732607
image-20251218143732607

成功访问到页面啦

image-20251218143822756

n,

image-20251218143822756

登录看

image-20251218143822756
image-20251218143822756

成功进入EasyNVR的首

image-20251218143938671

啦,这里选择

image-20251218144001820
image-20251218143938671

言,然后下一

image-20251218144001820
image-20251218144001820
image-20251218143938671

继续

image-20251218144001820

即可

image-20251218144001820
image-20251218144001820

然后到最后一步

image-20251218144032834

,设置一个新的账号名

image-20251218144032834

和密码,就

image-20251218144032834

始化完成

image-20251218144032834


image-20251218144032834

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,后面添加设备时会用到。

我这里使用的监控设备为乔安,它不支持将自己设

image-20251218151906378

后台,找到摄

image-20251218151906378

机IP,做

image-20251218151906378

P-MA

image-20251218151906378

绑定,如:

image-20251218151906378
image-20251218151906378

这样就做好IP和Mac地址绑定啦,不同的路由器页面不同,可以搜索对应品牌设置方法。

3.2 获取流协议地址

可以看到我这台设备的IP地址为:

image-20251218152055778

Bash

浏览器

image-20251218152055778

问这个地址,登录

image-20251218152055778

机后台

image-20251218152055778

看到

image-20251218152055778

P的开关和

image-20251218152055778
image-20251218152055778

RTSP的协议地址一般结构为(最好的办法是可以直接询问客服,如果支持流协议,客服会给您提供):

# rtsp://用户名:密码@摄像机IP地址/live/ch00_0
rtsp://admin:admin123@192.168.50.127/live/ch00_0

Ba

image-20251218152333397

我们

image-20251218152333397

以拿相关支持播放流的

image-20251218152333397

序进行测试

image-20251218152333397

比如Po

image-20251218152333397

Player进行播

image-20251218152333397
image-20251218152333397


image-20251218152333397

可以看到,能够成功的获取到监控中的画面了!代表这个流协议地址正确!

3.3 将流协议地址接入到EasyNVR

在前面,我们已经成功的给摄像头配置了静态IP,这样我们的RTSP流协议地址就不会发生变化了

image-20251218154228277

接入到EasyNV

image-20251218154228277

中。

首先打开Ea

image-20251218154228277

yNVR的

image-20251218154228277

页,然后

image-20251218154228277

设备列表菜单,点

image-20251218154228277
image-20251218154228277

image-20251218154400268
image-20251218154228277
image-20251218154228277

这里由于是RTSP协议地址,所以选择PULL,下

image-20251218154533718
image-20251218154400268

看到提示为接入设备RTSP、

image-20251218154400268

TTP、TC

image-20251218154400268

image-20251218154400268
image-20251218154533718

image-20251218154400268
image-20251218154658537

确定

image-20251218154400268
image-20251218154400268

点击确定

image-20251218154533718

,就

image-20251218154805600
image-20251218154533718

你的

image-20251218154838525
image-20251218154533718

,可

image-20251218154533718

看到在线状

image-20251218154533718
image-20251218154533718


image-20251218154533718
image-20251218154533718

image-20251218154658537

通道列表图表,点击进入,然后可以看到

image-20251218154658537

image-20251218154805600

划显示为

image-20251218154838525
image-20251218154658537

,这里

image-20251218154805600

接将

image-20251218154658537
image-20251218154838525

,这样就

image-20251218154805600
image-20251218154658537

image-20251218154658537

录制啦

image-20251218154658537
image-20251218154658537


image-20251218154658537
image-20251218154658537

点击下方

image-20251218154838525
image-20251218154805600

直播中按

image-20251218154805600
image-20251218154838525

即可

image-20251218154838525
image-20251218154805600
image-20251218154805600

页面

image-20251218154805600
image-20251218154805600
image-20251218154838525

如下图所

image-20251218154838525
image-20251218154838525
image-20251218154838525


image-20251218154838525
image-20251218154838525

可以看到,该直播预览页面集成了多协议实时播放、线路切换、云台控制与参数可视化等能力,用户可

image-20251218161547415

HTTP-FLV、RTMP、RTSP

image-20251218161658990

与兼容性;在视频播放的同时,

image-20251218161908459

输方式、码率等关键流媒体信息,便于调试与排障;若视频流协议源本身支持云台控制,还可直接

image-20251218163421727
image-20251218161547415

3.4 查看录像回放

前面设置

image-20251218161547415

了录像

image-20251218161658990

划,设置为每天,设置

image-20251218161547415

后就会即刻

image-20251218161658990

始录

image-20251218161547415

image-20251218161908459

们回

image-20251218161547415

首页

image-20251218161547415

选择

image-20251218161658990
image-20251218161547415

单的

image-20251218161547415
image-20251218161908459
image-20251218161547415
image-20251218161547415
image-20251218161547415


image-20251218161547415
image-20251218161547415

我们直接点击

image-20251218161658990
image-20251218161908459

看图表,即可

image-20251218163421727

来回

image-20251218161908459

页面了:

image-20251218163421727
image-20251218161908459

不仅回放

image-20251218161908459

能,还

image-20251218163421727
image-20251218161908459

持选择指

image-20251218161908459

时间段进

image-20251218161908459
image-20251218161908459
image-20251218161908459
image-20251218163421727

image-20251218161908459
image-20251218161908459

:

image-20251218161908459
image-20251218161908459
image-20251218163421727

果你按

image-20251218163421727

前面的飞牛相册路

image-20251218163421727

映射,

image-20251218163421727

还可以直接

image-20251218163421727
image-20251218163421727
image-20251218163421727

牛相册

image-20251218163421727
image-20251218163421727
image-20250910114418412
image-20251218163421727

image-20251218163421727
image-20251218163421727

好啦,基本设置就完成啦,EasyNVR还拥有更多功能值得你去探索!

4 穿透EasyNVR实现公网访问

到这里,EasyNVR 已经在飞牛 NAS 上跑起来了,录像也都存在本地硬盘上,彻底告别了云存储月租费。但问题来了:虽然各家摄像头 APP 也能看实时画面,但想回看历史录像就要交钱,而且家里几个不同品牌的摄像头还得装好几个 APP,管理起来很麻烦。

有了 cpolar 内网穿透,这些问题就迎刃而解了。只需简单配置,就能让 EasyNVR 通过公网地址随

image-20251218165154961

时画

image-20250910114418412

重要的是免费回

image-20250910114418412

存储的所有录像

image-20250910114418412

一个链接就能分

image-20250910114418412

人,不用每个人

image-20250910114418412
image-20250910114418412

PP、注册账号

image-20250910114418412

image-20250910114418412

能看

image-20250910114418412
image-20250910114418412
image-20250910114418412
image-20250910114418412

image-20250910114418412
image-20250910114418412

ol

image-20250910114418412
image-20250910114418412
  • cpolar 是一款内网穿透工具,可以将你在局域网内运行的服务(如本地 Web 服务器、SSH、远

    image-20250804085039567

    群晖 NAS 等平台,并提供一键安装脚本方便部署。

4.2 安装cpo

image-20251218165154961

在前面

image-20250804085208319

端中输入如下命令,

image-20251218165154961

键安装cpolar

image-20251218165154961
sudo cu
image-20251218165154961
l
image-20251218165154961
https://
image-20251218165154961
et.
image-20251218165154961
polar
image-20251218165154961
sh 
image-20251218165154961
image-20251218165154961
image-20251218165154961
sh
image-20251218165154961

Bash

image-20251218165154961
image-20251218165154961
image-20251218165228464
image-20251014164856740

image-20251218165228464

后,执行下方命

image-20251218165228464

cpolar服务状

image-20251218165228464

如图所示即

image-20251218165228464
image-20251218165228464

动)

sud
image-20251218165228464
y
image-20251218165228464
mct
image-20251218165228464
t
image-20251218165228464
image-20251218165228464
image-20251218165228464
 c
image-20251218165228464
ar
image-20251218165228464
image-20251218165228464

Bas

image-20251218165228464
image-20251218165228464

4.3

image-20250804085039567

登录cp

image-20250804085039567

r web u

image-20250804085039567

image-20250804085208319

官网链

image-20250804085039567

ttps:

image-20250804085039567
image-20250804085039567

w.cpola

image-20250804085039567

o

image-20250804085039567

访问

image-20250804085039567

l

image-20250804085039567
image-20250804085039567

,点

image-20250804085039567

注册

image-20250804085039567

进行账

image-20250804085039567
image-20250804085039567

进入到如下的注册页面进行账号注册:

image-20251014164829371

注册

image-20251218165710198
image-20251014164829371

器中输入飞牛NAS

image-20251014164829371

地址+920

image-20251014164856740
image-20251014164829371

w

image-20251014164856740

u

image-20251014164829371

image-20251014164829371
image-20251014164856740

tt

image-20251014164829371

/192

image-20251014164829371
image-20251014164856740

1

image-20251014164829371

4

image-20251014164856740
image-20251014164856740

200/

image-20251014164856740

ash

image-20251014164856740
image-20251014164856740

输入刚才注

image-20251014164856740
image-20251014164856740

po

image-20251014164856740

账号

image-20251014164856740

可进入后台

image-20251014164856740
image-20251014164856740

4.4 穿透EasyNVR的WebUI界面

点击左侧菜单栏的隧道管理,展开进入隧道列表页面,页面下默认会有 2 个隧道:

  • ssh隧道,指向22端口

    image-20251218165452591

    p协议

image-20251218165452591
  • website隧道,指向8080端口,http协议(http协议默认会生成2个公网地址,一个是http,另一个https,免去配置ssl证书的繁琐步

    image-20251218165710198
image-20251218165710198

点击编辑website的隧道

image-20251218165710198

设置名称为easynv

image-20251218165710198

辨识,

image-20251218165710198

地地

image-20251218165710198

100

image-20251218165710198

系统的

image-20251218165710198
image-20251218165710198

址,地区

image-20251218165710198
image-20251218165710198
image-20251218165710198
image-20251218165710198

a

image-20251218165710198
image-20251218165830760

后点击

image-20251218165710198
image-20251218165710198

image-20251218165830760

击左侧菜单的状态菜单,接着

image-20251218165830760
image-20251218165942550
image-20251218165830760
image-20251218165942550
image-20251218165830760

以看到有2

image-20251218165830760
image-20251218165942550

nvr

image-20251218165830760
image-20251218165830760

隧道,一个为ht

image-20251218165830760
image-20251218165830760
image-20251218165830760
image-20251218165830760

另一个

image-20251218165830760
image-20251218165830760

t

image-20251218165942550

议:

image-20251218165830760
image-20251218165942550
image-20251218165830760
image-20251218165942550
image-20251218165942550

来在浏览器中访问ea

image-20251218165942550
image-20251218165942550
image-20251218165942550

生成的

image-20251218165942550

址,这里以ht

image-20251218165942550

为例

image-20251218165942550
image-20251218165942550

可以看到成功的访问到EasyNVR的页面啦!不过随机域名方式适合预算有限的用户。使用此方式时,系统会每隔 24 小时 左右自

image-20251218172009215

如果您有一定的预算,可以查看大纲5固定域名方式,且访问更稳定哦。

5 固定二级子域名

image-20251218172120553

每 24 小时左右会自动更换一次,每次变化都要重新记地址、重新分享链接,用起来确实不太方便。如果你希望拥有一个固定不变、简短易记

image-20251218172150224

lar 任意付费套餐,即可配置

image-20251218172241180

,彻底告别域名频繁变化的烦恼。下面我们来看看如何操作。

首先,进入官网的预留页面:

https://das
image-20251218171936173
ar
image-20251218171936173
polar.com/
image-20251218171936173
erved

Bash

image-20251218171936173

后,选择

image-20251218171936173

image-20251218171936173

保留

image-20251218171936173
image-20251218171936173
image-20251218171936173

,填写其中的地区、名

image-20251218171936173
image-20251218171936173

(可

image-20251218171936173

image-20251218171936173

点击保留按钮,

image-20251218171936173

骤图

image-20251218171936173
image-20251218171936173

列表中显示了一条已保留的二级子域名记录:

  • 地区:显示为China Top

  • image-20251218172009215

    :显示

    image-20251218172009215

    synvr

注:

image-20251218172009215

名是唯一的,每个账号都不相同,

image-20251218172009215

己设置的

image-20251218172009215
image-20251218172009215

的为

image-20251218172009215
image-20251218172009215
image-20251218172009215

入侧边菜单栏的

image-20251218172009215
image-20251218172009215

下的

image-20251218172009215
image-20251218172009215
image-20251218172120553
image-20251218172009215
image-20251218172009215

,可以看到名为e

image-20251218172009215

nvr

image-20251218172009215
image-20251218172009215

点击编辑按钮进入编辑页面,

image-20251218172150224

名类型为

image-20251218172150224

域名,然后填写前

image-20251218172241180
image-20251218172150224

image-20251218172241180

,点击更新按钮:

image-20251218172150224

接着来到状态菜单

image-20251218172150224

线隧道

image-20251218172150224
image-20251218172241180
image-20251218172150224

道名称

image-20251218172241180
image-20251218172150224
image-20251218172150224

s

image-20251218172241180

r的公

image-20251218172241180
image-20251218172150224
image-20251218172150224
image-20251218172241180
image-20251218172241180

image-20251218172150224
image-20251218172150224
image-20251218172241180
image-20251218172241180

image-20251218172150224
image-20251218172241180
image-20251218172241180
image-20251218172241180
image-20251218172150224
image-20251218172241180
image-20251218172150224
image-20251218172241180

https访

image-20251218172241180

一下:

image-20251218172241180

访问成功!

总结

从 Docker 一键部署 EasyNVR,到摄像头固定 IP 配置、RTSP 流接入,再到用 cpolar 将监控画面稳定暴露到公网——我们把原本需要交云存储费才能实现的”随时随地看监控”,变成了完全自主可控的本地方案。

  • 彻底告别云存储费:录像直接存在飞牛 NAS 本地硬盘,不依赖厂商云服务,想存多久存多久

  • 多品牌统一管理:家里不同牌子的摄像头,一个 EasyNVR 界面全搞定,不用装一堆 APP

  • 历史录像免费看:本地存储的录像随时回放、下载,再也不用为”回看要付费”买单

  • 一键分享给家人:cpolar 生成的公网链接直接分享,不用每个人都装 APP、注册账号,浏览器打开就能看

这不仅是一份部署教程,更是一套让家用摄像头真正”为你所用”的完整方案。无论是想省下云存储费,还是想统一管理家里的监控设备,这套方案都能让你在几十分钟内搭建好自己的私有监控平台。现在就动手试试吧!