利用Windows搭建Emby媒体库服务器,轻松实现无公网IP的远程访问

2023-09-15 09:48:01

1.前言

在现代五花八门的网络应用场景中,观看视频绝对是主力应用场景之一,加上移动网络技术的发展,随时随地看视频已经成为基本需求。不过,随着资本向视频应用的集中,想要看视频就必须先充会员,这让笔者很是郁闷,于是产生了自建影音云盘的想法,期间也尝试了多种影音服务器。今天,笔者就为大家介绍,如何在Windows系统中,使用Cpolar内网穿透+Emby,搭建自己的私人影音平台。

2. Emby网站搭建

作为国外玩家推崇的影音平台三剑客之一的Emby,拥有漂亮的软件界面(虽然笔者感觉和jellyfin很像)和强大功能,并且能够支持多种操作系统(Windows、MacOS、Linux、Android等等),最重要的是,它以.exe形式安装部署,省去了部署网页运行环境的麻烦。

2.1. Emby下载和安装

正如前面所提到的,Emby的安装很简单,只要登录Emby的官网emby.media,点击页面上方的download按钮,就能进入软件下载页面。在下载页面,我们选择对应操作系统的emby软件下载即可(笔者下载的是Windows X64版本)。

20230426091901

20230426091902

20230426091903

20230426091904

Emby软件是以压缩包形式下载,下载完成后将其解压到本地电脑。根据Emby官网的安装指引,我们在解压后的Emby文件夹的system文件夹下,找到名为EmbyServer.exe的文件,双击执行安装。

在双击EmbyServer.exe文件后,Windows可能会弹出防火墙安全警告,我们只要允许其访问互联网即可。

20230426091905

20230426091906

只要很短时间,Emby就会安装完成。软件安装完成后,会在Windows任务栏右下角的系统托盘处生成一个绿色的Emby图标。右键单击这个图标,并点选弹出菜单的Emby Premiere选项,就能进入本地Emby服务器的设置页面。

20230426091907

Emby的设置页面平平无奇,都是常规的“界面语言”、“本地媒体文件存放位置”、“管理员信息”之类。此处笔者就不过多冗述。

20230426091908

2.2 Emby网页测试

完成本地Emby服务器的设置后,Emby软件会转入登录页面(如没有跳转,可以在浏览器地址栏输入localhost:8096/Web),此处只要输入设置时输入的登录名,就能登录Emby Server主页面。

20230426091909

20230426091910

此时的Emby Server就在本地8096端口输出,接下来我们只需要使用cpolar内网穿透,为本地8096端口建立一条内网穿透数据隧道,就能在公共互联网上,访问到本地(局域网内)电脑上的Emby Server页面。

3. 本地网页发布

3.1 注册并安装cpolar内网穿透

cpolar内网穿透工具:https://www.cpolar.com/

完成Emby Server在本地电脑的安装后,就可以转入cpolar内网穿透工具的安装。与Emby Server的安装一样,cpolar的安装注册同样简单易行。我们可以直接在cpolar的官网页面找到下载按钮。

20230426091911

笔者使用的是Windows操作系统,因此选择Windows版本进行下载。

20230426091912

Cpolar下载完成后,将下载的文件解压,双击解压后的.msi文件,就能自动执行安装程序,接着一路点击Next就能完成安装。

20230426091913

20230426091914

cpolar会为每个用户创建独立的数据隧道,并通过用户密码和token码保证每位用户的数据安全,因此在使用cpolar之前,需要进行注册登录。在cpolar官网注册新用户的过程也非常简单,只要在cpolar主页右上角点击“用户注册”按钮,并在注册页面填入必要信息,就能完成注册。

20230426091915

20230426091916

完成了Emby Server和cpolar内网穿透程序的安装,接着我们就可以使用cpolar,创建一个能够连接本地测试页面的公共互联网地址,让我们能在有限范围对的支付页面进行测试。

3.2 Cpolar云端设置

由于笔者想要能随时访问到自己的私人影音云盘,不想每天进行重连设置(cpolar免费版设置的内网穿透数据隧道每24小时就会重置一次),因此将cpolar升级至vip版,以获得长期稳定存在的内网穿透数据隧道。如果是cpolar免费版或只是临时创建数据隧道,可以直接在cpolar客户端进行设置而不必在cpolar云端进行设置。

为创建能够长期稳定存续的内网穿透数据隧道,我们先登录cpolar的官网,在用户主页面左侧找到预留按钮,并点击进入cpolar的数据隧道预留页面。在这里生成一个公共互联网地址(可以理解为数据隧道的入口),由于此时这个地址没有连接本地的软件输出端口,因此也可以看做是空白的数据隧道。

20230426091917

在预留页面,可以看到很多种可保留的数据隧道,这里我们选择保留二级子域名栏位。

20230426091918

在“保留二级子域名”栏位,需要进行几项信息的简单设置,即:

  • 地区:服务器所在区域,就近选择即可)
  • 二级域名:会最终出现在生成的公共互联网地址中,作为网络地址的标识之一)
  • 描述:可以看做这条数据隧道的描述,能够与其他隧道区分开即可)。

完成这几项设置后,就可以点击右侧的保留按钮,将这条数据隧道保留下来。

20230426091919

当然,如果这条数据隧道不打算再使用,还可以点击右侧的“x”将其轻松删除,节约宝贵的隧道名额。

20230426091920

3.3 Cpolar内网穿透本地设置

完成cpolar云端的设置,建立内网穿透数据隧道的入口后,我们回到本地的cpolar客户端,将云端生成的空白数据隧道与本地eEmby server页面连接起来,让我们能在公共互联网上访问到本地的测试页面。

在本地打开并登录cpolar客户端(可以在浏览器中输入localhost:9200直接访问,也可以在开始菜单中点击cpolar客户端的快捷方式)。

20230426091921

点击客户端主界面左侧隧道管理项下的创建隧道按钮,进入本地隧道创建页面(如果要创建没24小时重置地址的临时数据隧道,可直接在此进行设置,不必再cpolar官网设置空白数据隧道)。

在这个页面,同样需要进行几项信息设置,这些信息设置包括:

  1. 隧道名称:可以看做cpolar本地的隧道信息注释,方便我们分辨不用隧道的用途即可;
  2. 协议:Emby server是网页形式输出,因此选择http协议;
  3. 本地地址:本地地址即为本地网站的输出端口号,Emby server网页端口为8096,因此这里也填入8096;
  4. 域名类型:在这个例子中,我们已经在cpolar云端预留了二级子域名的数据隧道,因此勾选“二级子域名”(如果预留的是自定义域名,则勾选自定义域名);
  5. 在下一行Sub Domain栏中填入预留的二级子域名,这里填入“Embyserverweb”。如果打算创建临时数据隧道,则直接勾选“随机域名”,由cpolar客户端自行生成网络地址;
  6. 地区:与cpolar云端预留的信息一样,我们依照实际使用地填写即可;

20230426091922

完成这些设置后,就可以点击页面下方的创建按钮,将cpolar云端的空白数据隧道与本地的Emby server页面连接起来,即创建了可以在公共互联网访问本地Emby server的数据隧道。

我们可以在隧道管理项下的隧道列表页面中,对这条数据隧道进行管理,包括开启、关闭或删除这条隧道,也可以点击“编辑”按钮,最这条数据隧道的信息进行修改。

20230426091923

4.公网访问测试

最后,我们点击左侧状态项下的在线隧道列表按钮,就能找到Emby Server页面的公共互联网地址,将这个地址粘贴到浏览器中,就能看到本地电脑上安装的Emby登录页面。

20230426091924

20230426091925

5.结语

到这里,我们就成功的使用cpolar+Emby搭建了专属于我们自己的私人影音库,让我们能随时随地访问到本地电脑上的影音资源。当然,搭建个人影音云盘只是cpolar应用场景的一个方面,我们还能使用其他网页或软件与cpolar配合,构建出其他应用场景,让我们的生活工作更加方便。

转载自cpolar极点云文章:家庭私人影院 – Windows搭建Emby媒体库服务器并远程访问 「无公网IP」

更多推荐

JavaScript -【第四周】

文章来源于网上收集和自己原创,若侵害到您的权利,请您及时联系并删除数组知道什么是数组及其应用的场景,掌握数组声明及访问的语法。1.数组是什么?数组:(Array)是一种可以按顺序保存数据的数据类型【为什么要数组】:思考:如果我想保存一个班里所有同学的姓名怎么办?使用场景:如果有多个数据可以用数组保存起来,然后放到一个变

神经网络-pytorch版本

pytorch神经网络基础torch简介torch和numpyimporttorchimportnumpyasnpnp_data=np.arange(6).reshape((2,3))torch_data=torch.from_numpy(np_data)tensor2array=torch_data.numpy()p

openssl创建CA证书教程

配置生成CA证书总示意图:(1),通过openssl创建CA证书第一步:创建一个秘钥,这个便是CA证书的根本,之后所有的东西都来自这个秘钥#通过rsa算法生成2048位长度的秘钥opensslgenrsa-outmyCA.key2048第二步:是通过秘钥加密机构信息形成公钥#公钥包含了机构信息,在输入下面的指令之后会有

4G工业路由器,开启智能工厂,这就是关键所在

​提到工业物联网,首先联想到的就是数据传输。要把海量的工业数据从设备端传到控制中心,无线数传终端就发挥着重要作用。今天就跟着小编来看看它的“联”是怎么建立的吧!原文:https://www.key-iot.com/iotlist/1838.html一提到无线数传终端,相信大家首先想到的是DTU模块。其实按照功能定位,又

中尺度混凝土二维有限元求解——运行弯曲、运行光盘、运行比较、运行半圆形(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。⛳️座右铭:行百里者,半于九十。📋📋📋本文目录如下:🎁🎁🎁目录💥1概述📚2运行结果🎉3参考文献🌈4Matlab代码实现💥1概述中尺度混凝土二维有限元求解是一种常见的工程分析方法

【Redis面试题(46道)】

文章目录Redis面试题(46道)基础1.说说什么是Redis?2.Redis可以用来干什么?3.Redis有哪些数据结构?4.Redis为什么快呢?5.能说一下I/O多路复用吗?6.Redis为什么早期选择单线程?7.Redis6.0使用多线程是怎么回事?8.Redis持久化⽅式有哪些?有什么区别?9.RDB和AOF

QT之QLineEdit简介

QT之QLineEdit简介QLineEdit是Qt的一个类,用于创建和管理单行的文本输入框。以下是一些常用的QLineEdit函数和它们的用法:1)QLineEdit(QWidget*parent=nullptr)构造函数,创建一个新的QLineEdit对象。parent参数是指向父窗口的指针,如果省略,则QLine

docker容器的设置本地时间(/etc/localtime)和本地时区(/etc/timezone)

本地时区的修改一般情况下,我们启动docker容器时指定了环境变量:-eTZ:=Asia/Ho_Chi_Minh,容器内的时区就会变成东八区,某些软件则会读取该环境变量作为其使用的时区,该环境变量相当于"残缺版"的命令:echo'Asia/Ho_Chi_Minh'>/etc/timezone为什么说残缺版,继续往下看。

STM32 ~ GPIO不同模式之间的区别与实现原理

GPIO全称GeneralPurposeInputOutput,即通用输入/输出。其实GPIO的本质就是芯片的一个引脚,通常在ARM中所有的I/O都是通用的。不过,由于每个开发板上都会设计不同的外围电路,这就造成了GPIO的功能可能有所不同。大部分GPIO都是有复用功能的,比如有些GPIO可能是串口的TX或RX,也可能

【音视频】ffplay源码解析-PacketQueue队列

包队列架构位置对应结构体源码MyAVPacketListtypedefstructMyAVPacketList{AVPacketpkt;//解封装后的数据structMyAVPacketList*next;//下一个节点intserial;//播放序列}MyAVPacketList;PacketQueuetypedef

面试官:Javscript数组的常用方法有哪些?

🎬岸边的风:个人主页🔥个人专栏:《VUE》《javaScript》⛺️生活的理想,就是为了理想的生活!目录一、操作方法增push()unshift()spliceconcat()删pop()shift()splice()slice()改splice()查indexOf()includes()find()二、排序方法

热文推荐