Windows电脑部署Jellyfin服务端并进行远程访问配置详细教程
文章目录
- 前言
- 1. Jellyfin服务网站搭建
- 1.1 Jellyfin下载和安装
- 1.2 Jellyfin网页测试
- 2.本地网页发布
- 2.1 cpolar的安装和注册
- 2.2 Cpolar云端设置
- 2.3 Cpolar本地设置
- 3.公网访问测试
- 4. 结语
前言
本文主要分享如何使用Windows电脑本地部署Jellyfin影音服务并结合cpolar内网穿透工具,将本地服务免费发布至公网,实现远程访问,无需公网IP也不用设置路由器那么麻烦。
随着移动智能设备的普及,现在的移动流媒体需求(智能手机看视频)发展的越来越好。但当我们习惯这些需求后,忽然发现自己不知不觉间成了平台待割的韭菜。作为一颗倔强的韭菜,自然不会甘愿被割,因此可以本地自建一个私人影音媒体平台。
除了在局域网使用各种设备进行观看,也可以使用cpolar内网穿透工具,让本地自建的私人影音平台可以在公网环境被远程访问。
1. Jellyfin服务网站搭建
Jellyfin作为相对知名的影音服务器,在NAS平台广受欢迎,但笔者连韭菜都不愿意当,自然没有NAS这样的专业装备,只有一台淘汰下来的台式机,好在这台台式机配置不算低到离谱,并且jellyfin有Windows版本的服务端,让笔者能以简单的方式搭建jellyfin服务器。
1.1 Jellyfin下载和安装
首先,我们下载Jellyfin的server端,只要访问jellyfin的官方网站,点击下载按钮进入下载页面,选择服务器分项进行下载即可。当然,jellyfin也提供其他操作系统(linux、MacOS)版本的软件,只要按需下载就好。



jellyfin下载完成后,直接双击.exe文件,即可进入自动安装程序,在安装过程中,除了注意选择Basic Install(Recommended)以外,其他几乎都可以一路点击“Next”略过。


Jellyfin安装完成后,点击生成的快捷方式,启动jellyfin service程序。Jellyfin会在Windows的系统托盘处生成一个小图标,右键点击这个图表,就能打开jellyfin的网页安装界面。

首次启动jellyfin服务时,可能会出现Windows防火墙警告,我们选择允许访问即可。

点击open jellyfin后,软件会自动打开浏览器访问localhost:8096端口,进行jellyfin service网页设置页面。而这里的设置都是常规的语言设置、管理员账号设置、媒体库文件夹选择(可以暂时不选而跳过)、允许远程访问等。





完成这些设置后,就可以正式登入jellyfin网页。
1.2 Jellyfin网页测试
为方便展示,笔者完成jellyfin service网页安装后,以admin角色登录jellyfin service。只要能正确登录jellyfin主页面,就说明我们已经完成jellyfin的安装。


2.本地网页发布
完成了jellyfin service安装后,接下来就可以使用cpolar内网穿透创建一条内网穿透数据隧道,搭建连接本地jellyfin页面的公共互联网地址,让我们能在公共互联网上访问到家里(局域网)的jellyfin服务器。
2.1 cpolar的安装和注册
cpolar官网:https://www.cpolar.com
与jellyfin service的安装一样,cpolar可以直接在其官网页面进行下载。在cpolar官网页面的上部,找到下载按钮。

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

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


cpolar会为每个用户创建独立的数据隧道,并通过用户密码和token码保证每个用户的数据安全。因此我们正式使用cpolar前,需要进行用户注册。注册过程简单易行,只要在cpolar主页右上角点击用户注册,在注册页面填入必要信息,就能完成注册。


2.2 Cpolar云端设置
由于cpolar免费版的数据隧道每24小时重置一次,笔者不想每天进行重连设置,因此将升级cpolar至vip版,以便能获得能长期稳定存在的内网穿透数据隧道。
接下来,我们先登录cpolar的官网,并在用户主页面左侧找到预留按钮,并点击进入cpolar的数据隧道预留页面。在这里生成一个公共互联网地址(也可以看做数据隧道的入口),由于此时这个地址没有连接本地的jellyfin网页输出端口,因此也可以看做是一条空白的数据隧道。

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

在保留二级子域名栏位,需要进行几项信息的简单设置,即:
地区:服务器所在区域,就近选择即可二级域名:会最终出现在生成的公共互联网地址中,作为网络地址的标识之一描述:可以看做这条数据隧道的描述,能够与其他隧道区分开即可
完成这几项设置后,就可以点击右侧的“保留”按钮,将这条数据隧道保留下来。

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

2.3 Cpolar本地设置
完成cpolar云端设置并保留了空白数据隧道后,我们返回本地电脑的cpolar客户端,将云端生成的空白数据隧道与本地jellyfin service页面连接起来。
在本地打开并登录cpolar客户端(可以在浏览器中输入localhost:9200直接访问,也可以在开始菜单中点击cpolar客户端的快捷方式)。

点击客户端主界面左侧隧道管理项下的创建隧道按钮,进入本地隧道创建页面(如果要创建没24小时重置地址的临时数据隧道,可直接在此进行设置,不必再cpolar官网设置空白数据隧道)。
在这个页面,同样需要进行几项信息设置,这些信息设置包括:
1.
隧道名称:可以看做cpolar本地的隧道信息注释,只要方便我们分辨即可
2.协议:由于的测试页面是网页,因此选择http协议
3.本地地址:本地地址即为本地网站的输出端口号,之前我们访问本地jellyfin网页时端口号为8096,因此这里也填入8096
4.域名类型:由于我们已经在cpolar云端预留了二级子域名的数据隧道,因此勾选“二级子域名”(如果预留的是自定义域名,则勾选自定义域名)
5.Sub Domain:填入预留的二级子域名,该例子中为“jellyfinweb”(如果打算创建临时数据隧道,则直接勾选“随机域名”,由cpolar客户端自行生成网络地址)
6.地区:与cpolar云端预留的信息一样,我们依照实际使用地填写即可

完成以上设置后,即可点击页面下方的创建按钮,将cpolar云端的空白数据隧道与本地的支付测试页面连接起来,完成cpolar云端地址与本地jellyfin网页的连接。
cpolar云端地址与本地jellyfin服务器网页的连接完成后,cpolar客户端会自动跳转到“隧道管理”项下的“隧道列表”页面中,对这条数据隧道进行管理,包括开启、关闭或删除这条隧道,也可以点击“编辑”按钮,最这条数据隧道的信息进行修改。

3.公网访问测试
最后,我们点击左侧状态项下的在线隧道列表按钮,就能找到jellyfin service的公共互联网地址。

将这个地址粘贴到浏览器中,就能看到本地jellyfin的web页面,也就成功建立专属自己的私人影音平台。


4. 结语
当然,能用作搭建私人影音平台的软件和网页源文件有很多,jellyfin并不是唯一选择,但使用其他软件和源文件搭建私人影音平台的流程大同小异,最重要的是,就算韭菜也有拒绝被收割的时候。在大部分情况下,我们仍然能依靠自己动手,做到丰衣足食。
相关文章:
Windows电脑部署Jellyfin服务端并进行远程访问配置详细教程
文章目录 前言1. Jellyfin服务网站搭建1.1 Jellyfin下载和安装1.2 Jellyfin网页测试 2.本地网页发布2.1 cpolar的安装和注册2.2 Cpolar云端设置2.3 Cpolar本地设置 3.公网访问测试4. 结语 前言 本文主要分享如何使用Windows电脑本地部署Jellyfin影音服务并结合cpolar内网穿透工…...
rsync同步目录脚本
假设有两台服务器的示例 IP 地址为: Server A: 192.168.1.100Server B: 192.168.1.200 现在来解释如何使用这个脚本进行服务器之间文件夹内容的同步,保留路径和服务器信息的抽象化。 1. 脚本文件位置和权限 假设脚本文件位于 /root/script.sh&#x…...
LeetCode 6. Z 字形变换
LeetCode 6. Z 字形变换 将一个给定字符串 s 根据给定的行数 numRows ,以从上往下、从左到右进行 Z 字形排列。 比如输入字符串为 “PAYPALISHIRING” 行数为 3 时,排列如下: 之后,你的输出需要从左往右逐行读取,产生…...
RTC实时时钟
一、Unix时间戳 1、Unix 时间戳 (1)Unix 时间戳(Unix Timestamp)定义为从UTC/GMT的1970年1月1日0时0分0秒开始所经过的秒数,不考虑闰秒 (2)时间戳存储在一个秒计数器中,秒计数器为…...
WHAT - React 学习系列(一)
官方文档 If you have a lot of HTML to port to JSX, you can use an online converter. You’ll get two things from useState: the current state (count), and the function that lets you update it (setCount). To “remember” things, components use state.To mak…...
代理模式(静态代理/动态代理)
代理模式(Proxy Pattern) 一 定义 为其他对象提供一种代理,以控制对这个对象的访问。 代理对象在客户端和目标对象之间起到了中介作用,起到保护或增强目标对象的作用。 属于结构型设计模式。 代理模式分为静态代理和动态代理。…...
Word2Vec基本实践
系列文章目录 提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加 例如:第一章 Python 机器学习入门之pandas的使用 提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目…...
IIS配置網站登錄驗證,禁止匿名登陸
需要維護一個以前的舊系統,這個系統在內網運行,需要抓取電腦的登陸賬號,作為權限管理的一部分因此需要在IIS配置一下...
抖音矩阵系统搭建,AI剪辑短视频,一键管理矩阵账号
目录 前言: 一、抖音矩阵系统有哪些功能? 1.AI智能文案 2.多平台账号授权 3.多种剪辑模式 4. 矩阵一键发布,智能发布 5.抖音爆店码功能 6.私信实时互动 7.去水印及外链 二、抖音矩阵系统可以解决哪些问题? 总结ÿ…...
山东大学软件学院创新项目实训开发日志——收尾篇
山东大学软件学院创新项目实训开发日志——收尾篇 项目名称:ModuFusion Visionary:实现跨模态文本与视觉的相关推荐 -------项目目标: 本项目旨在开发一款跨模态交互式应用,用户可以上传图片或视频,并使用文本、点、…...
vue2.7支持组合式API,但是对应的vue-router3并不支持useRoute、useRouter。
最近在做一个项目,因为目标用户浏览器版本并不确定,可能会有较旧版本,于是采用vue2.7而不是vue3,最近一年多使用vue3开发的项目都碰到了很多chrome 63-73版本,而对应UI 库 element plus又问题很多。 为了不碰到这些问…...
摊位纠纷演变肢体冲突,倒赔了500:残疾夫妇与摊主谁之过?
在一个小商贩密集的街区,一起由摊位纠纷引发的肢体冲突事件在当地社区和网络上引起了热议。涉事双方为一名摊主和一对残疾夫妇,他们的争执源自对一个摊位的使用权。本是口头上的争吵,却由于双方情绪激动,迅速升级为肢体冲突&#…...
深入理解和实现Windows进程间通信(消息队列)
常见的进程间通信方法 常见的进程间通信方法有: 管道(Pipe)消息队列共享内存信号量套接字 下面,我们将详细介绍消息队列的原理以及具体实现。 什么是消息队列? Windows操作系统使用消息机制来促进应用程序与操作系…...
Web网页前端教程免费:引领您踏入编程的奇幻世界
Web网页前端教程免费:引领您踏入编程的奇幻世界 在当今数字化时代,Web前端技术已成为互联网发展的重要驱动力。想要踏入这一领域,掌握相关技能,却苦于找不到合适的教程?别担心,本文将为您带来一份免费的We…...
北斗短报文终端在应急消防通信场景中的应用
在应对自然灾害和紧急情况时,北斗三号短报文终端以其全球覆盖、实时通信和精准定位的能力,成为应急消防通信的得力助手。它不仅能够在地面通信中断的极端条件下保障信息传递的畅通,还能提供精准的位置信息,为救援行动提供有力支持…...
Java跳动爱心代码
1.计算爱心曲线上的点的公式 计算爱心曲线上的点的公式通常基于参数方程。以下是两种常见的参数方程表示方法,用于绘制爱心曲线: 1.1基于 (x, y) 坐标的参数方程 x a * (2 * cos(θ) - sin(θ))^3 y a * (2 * sin(θ) - cos(θ))^3 其中ÿ…...
Swift Combine — Operators(常用Filtering类操作符介绍)
目录 filter(_: )tryFilter(_: )compactMap(_: )tryCompactMap(_: )removeDuplicates()first(where:)last(where:) Combine中对 Publisher的值进行操作的方法称为 Operator(操作符)。 Combine中的 Operator通常会生成一个 Publisher,该 …...
Windows11+CUDA12.0+RTX4090如何配置安装Tensorflow2-GPU环境?
1 引言 电脑配置 Windows 11 cuda 12.0 RTX4090 由于tensorflow2官网已经不支持cuda11以上的版本了,配置cuda和tensorflow可以通过以下步骤配置实现。 2 步骤 (1)创建conda环境并安装cuda和cudnn,以及安装tensorflow2.10 con…...
韩顺平0基础学Java——第27天
p548-568 明天开始坦克大战 Entry 昨天没搞明白的Map、Entry、EntrySet://GPT教的 Map 和 Entry 的关系 1.Map 接口:它定义了一些方法来操作键值对集合。常用的实现类有 HashMap、TreeMap 等。 2. Entry接口:Entry 是 Map 接口的一个嵌…...
YesPMP探索Python在生活中的应用,助力提升开发效率
Python是一种简单易学、高效强大的编程语言,正变成越来越多人选择的热门技能。学习Python不仅可以提供更多就业机会,还能让自己在职场更加有竞争力,那可以去哪里拓展自己的技能呢? YesPMP平台 为熟练掌握Python语言的程序员提供了…...
C++初阶-list的底层
目录 1.std::list实现的所有代码 2.list的简单介绍 2.1实现list的类 2.2_list_iterator的实现 2.2.1_list_iterator实现的原因和好处 2.2.2_list_iterator实现 2.3_list_node的实现 2.3.1. 避免递归的模板依赖 2.3.2. 内存布局一致性 2.3.3. 类型安全的替代方案 2.3.…...
稳定币的深度剖析与展望
一、引言 在当今数字化浪潮席卷全球的时代,加密货币作为一种新兴的金融现象,正以前所未有的速度改变着我们对传统货币和金融体系的认知。然而,加密货币市场的高度波动性却成为了其广泛应用和普及的一大障碍。在这样的背景下,稳定…...
sipsak:SIP瑞士军刀!全参数详细教程!Kali Linux教程!
简介 sipsak 是一个面向会话初始协议 (SIP) 应用程序开发人员和管理员的小型命令行工具。它可以用于对 SIP 应用程序和设备进行一些简单的测试。 sipsak 是一款 SIP 压力和诊断实用程序。它通过 sip-uri 向服务器发送 SIP 请求,并检查收到的响应。它以以下模式之一…...
CSS设置元素的宽度根据其内容自动调整
width: fit-content 是 CSS 中的一个属性值,用于设置元素的宽度根据其内容自动调整,确保宽度刚好容纳内容而不会超出。 效果对比 默认情况(width: auto): 块级元素(如 <div>)会占满父容器…...
代码随想录刷题day30
1、零钱兑换II 给你一个整数数组 coins 表示不同面额的硬币,另给一个整数 amount 表示总金额。 请你计算并返回可以凑成总金额的硬币组合数。如果任何硬币组合都无法凑出总金额,返回 0 。 假设每一种面额的硬币有无限个。 题目数据保证结果符合 32 位带…...
Python Ovito统计金刚石结构数量
大家好,我是小马老师。 本文介绍python ovito方法统计金刚石结构的方法。 Ovito Identify diamond structure命令可以识别和统计金刚石结构,但是无法直接输出结构的变化情况。 本文使用python调用ovito包的方法,可以持续统计各步的金刚石结构,具体代码如下: from ovito…...
Windows安装Miniconda
一、下载 https://www.anaconda.com/download/success 二、安装 三、配置镜像源 Anaconda/Miniconda pip 配置清华镜像源_anaconda配置清华源-CSDN博客 四、常用操作命令 Anaconda/Miniconda 基本操作命令_miniconda创建环境命令-CSDN博客...
淘宝扭蛋机小程序系统开发:打造互动性强的购物平台
淘宝扭蛋机小程序系统的开发,旨在打造一个互动性强的购物平台,让用户在购物的同时,能够享受到更多的乐趣和惊喜。 淘宝扭蛋机小程序系统拥有丰富的互动功能。用户可以通过虚拟摇杆操作扭蛋机,实现旋转、抽拉等动作,增…...
wpf在image控件上快速显示内存图像
wpf在image控件上快速显示内存图像https://www.cnblogs.com/haodafeng/p/10431387.html 如果你在寻找能够快速在image控件刷新大图像(比如分辨率3000*3000的图像)的办法,尤其是想把内存中的裸数据(只有图像的数据,不包…...
Ubuntu系统复制(U盘-电脑硬盘)
所需环境 电脑自带硬盘:1块 (1T) U盘1:Ubuntu系统引导盘(用于“U盘2”复制到“电脑自带硬盘”) U盘2:Ubuntu系统盘(1T,用于被复制) !!!建议“电脑…...
