【fnOS飞牛云NAS本地部署跨平台视频下载工具MediaGo与远程访问下载视频流程】

news2025/3/14 16:35:58

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。
img

  • 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老
  • 导航
    • 檀越剑指大厂系列:全面总结 java 核心技术,jvm,并发编程 redis,kafka,Spring,微服务等
    • 常用开发工具系列:常用的开发工具,IDEA,Mac,Alfred,Git,typora 等
    • 数据库系列:详细总结了常用数据库 mysql 技术点,以及工作中遇到的 mysql 问题等
    • 新空间代码工作室:提供各种软件服务,承接各种毕业设计,毕业论文等
    • 懒人运维系列:总结好用的命令,解放双手不香吗?能用一个命令完成绝不用两个操作
    • 数据结构与算法系列:总结数据结构和算法,不同类型针对性训练,提升编程思维,剑指大厂

非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。💝💝💝 ✨✨ 欢迎订阅本专栏 ✨✨

博客目录

    • 前言
    • 1.开启 ssh 服务
    • 2. 本地 Docker 部署
    • 3. 本地访问与使用测试
    • 4. 安装内网穿透
    • 5. 配置 MediaGo 服务公网地址
    • 6. 配置固定公网地址

前言

我们在浏览在线视频网站时,经常会遇到想要下载精彩的视频到本地电脑的需求,但是往往没有一个合适的下载工具,因为现在视频网站的视频大多数都为m3u8 文件格式。如果你不知道什么是嗅探插件或者 m3u8 下载器,那么想要下载个视频真的很麻烦。

今天就和大家分享一款非常好用的流媒体视频下载工具:MediaGo,支持 Windows、Mac 和 Linux 的视频下载器,其在 GitHub 上免费开源,不用抓包,不用安装插件,操作很是简单,对小白非常友好。而且除了可以在上述操作系统中使用桌面客户端,它还能通过 Docker 一键部署!

反应快的小伙伴应该马上就能想到这非常适合在 NAS 上部署,跟桌面客户端比虽然少了素材提取功能,但是安装在 NAS 上的好处则是无需电脑一直开机,而且功耗低。当然,具体如何选择还是看大家实际需求。下面我就拿 fnOS 飞牛云 NAS 演示一下如何本地部署,并且结合 cpolar 内网穿透工具还能轻松实现远程连接,随时随地使用家里 nas 中部署的 MediaGo 下载视频。

image-20250311152349242

1.开启 ssh 服务

本例中使用 VMware Workstation 安装的 fnOS 虚拟机,系统版本为 V0.8.37。如果不知道如何在虚拟机中安装飞牛云 NAS,可以参考这篇文章:VMware 中安装飞牛云(fnOS) NAS 系统

因为目前在 fnOS 的应用中心中暂时还没有上线 MediaGo 服务,所以我们需要通过 ssh 的方式远程连接进行 docker 容器部署。

首先,我们需要在飞牛云 NAS 中开启 ssh 服务:系统设置–SSH

image-20250311152324670

2. 本地 Docker 部署

然后我们在电脑中打开 cmd 或 powershell 等终端工具,执行下方命令 ssh 连接 fnOS:

ssh admin123@192.168.184.130     ## ssh fnos账号@fnos主机IP地址

输入密码后可以看到正常连接,然后执行sudo -i命令切换到 root 账号:

执行下方命令启动 MediaGo 的 Docker 容器:

docker run -d --name mediago -p 8899:8899 -v /root/mediago:/root/mediago registry.cn-beijing.aliyuncs.com/caorushizi/mediago:v3.0.0

左侧的 /root/mediago 路径需要替换为你在 NAS 中的数据存储路径:

比如我提前在 fnos 桌面上的文件管理中创建了一个名为 download 的文件夹,这里使用的完整存储路径就是 /vol1/1000/download,修改后的命令如下所示:

docker run -d --name mediago -p 8899:8899 -v /vol1/1000/download:/root/mediago registry.cn-beijing.aliyuncs.com/caorushizi/mediago:v3.0.0

7055a1f439f84c7348ea140e0c0865b

image-20250311153326969

等待部署完毕后,我们在 fnos 的 web 管理界面中点击 Docker 图标,可以看到 MediaGo 容器已经正常启动:

image-20250311153519512

9370c5fc80b7b6ce5b85ee634f93bc7

3. 本地访问与使用测试

现在我们在浏览器中输入 fnos 的 IP 加上 MediaGo 容器的端口号 8899,http://192.168.184.130:8899/ 即可打开 MediaGo 下载工具的 web 管理界面了:

c44dfe06a98f9fd0ff82f17936854c4

点击右上角的新建下载按钮,我们就可以配置下载任务了,支持流媒体(m3u8)与哔哩哔哩两种视频类别,接下来选择下载 B 站视频进行演示:

image-20250311153919116

选择好视频类别,然后将要下载的视频网址链接粘贴到视频链接框中,点击立即下载即可:

image-20250311154157292

下载速度极快:

image-20250311154336707

视频下载完后,在 fnos 的桌面点击文件管理,在我创建的 download 文件夹中就能看到下载好的视频了:

image-20250311154624912

这个 download 文件夹的完整路径就是上边我在使用 docker 命令部署 mediago 下载工具时的储存路径:

可以看到如果下载的视频如果有分 P,那么会将多个视频下载到一个文件夹中,如果是单独的视频则会单独显示,并且直接将 m3u8 文件格式转为更多播放器都支持的 MP4 视频格式,非常方便:

image-20250311154948947

双击就能播放视频:

image-20250311155318231

4. 安装内网穿透

我们现在已经实现了在本地 fnOS 飞牛云 NAS 中部署 MediaGo 视频下载工具,并通过它下载视频到本地。但如果你想随时随地都能通过手机、平板、电脑远程控制部署在 NAS 中的 MediaGo 来下载视频应该怎么办呢?

很简单,只要在 fnos 中安装一个 cpolar 内网穿透工具就能轻松实现远程访问内网主机中部署的服务了,节约成本,提高效率,接下来介绍一下如何安装 cpolar 内网穿透。

cpolar 官网地址: https://www.cpolar.com

首先,我们依旧在电脑上打开 cmd 或者 powershell 等终端工具,ssh 连接 fnos:

image-20250225152553263

因为 fnOS 是基于 Linux 内核开发的,所以我们可以按照 cpolar 的 Linux 安装方法进行安装,连接后执行下面 cpolar Linux 安装命令:

sudo curl https://get.cpolar.sh | sh

再次输入飞牛云 nas 的密码确认后即可自动安装 cpolar,安装完成后,执行下方命令查看 cpolar 服务状态:(如图所示即为正常启动)

sudo systemctl status cpolar

image-20250225153049854

Cpolar 安装和成功启动服务后,在浏览器上输入飞牛云主机 IP 加 9200 端口即:【http://localhost:9200】访问 Cpolar 管理界面,使用官网注册的账号登录,登录后即可看到配置界面,接下来在 web 界面配置即可:

image.png

5. 配置 MediaGo 服务公网地址

登录 cpolar web UI 管理界面后,点击左侧仪表盘的隧道管理——创建隧道:

  • 隧道名称:可自定义,本例使用了: mediago 注意不要与已有的隧道名称重复
  • 协议:http
  • 本地地址:8899
  • 域名类型:随机域名
  • 地区:选择 China Top

image-20250311160305434

创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了两个公网地址,使用任意一个网址在浏览器中访问,就可以实现随时随地远程访问你在本地 nas 中部署的 MediaGo 来下载视频了!

image-20250311160442315

使用了 cpolar 的公网域名,无需自己购买云服务器,轻松搞定跨网络环境远程访问本地服务!

image-20250311160548202

小结

为了方便演示,我们在上边的操作过程中使用 cpolar 生成的 HTTP 公网地址隧道,其公网地址是随机生成的。这种随机地址的优势在于建立速度快,可以立即使用。然而,它的缺点是网址是随机生成,这个地址在 24 小时内会发生随机变化,更适合于临时使用。

如果有长期远程访问本地飞牛云 NAS 中部署的 MediaGo 下载工具,或者有异地访问与使用其他本地电脑或主机上部署的服务的需求,但又不想每天重新配置公网地址,还想让公网地址好看又好记并体验更多功能与更快的带宽,那我推荐大家选择使用固定的二级子域名方式来配置公网地址。

6. 配置固定公网地址

接下来演示如何为 MediaGo 下载工具配置固定的 HTTP 公网地址,该地址不会变化,方便随时随地长期远程访问你部署的 MediaGo 下载视频,而无需每天重复修改随机公网地址。

配置固定 http 端口地址需要将 cpolar 升级到专业版套餐或以上。

登录 cpolar 官网,点击左侧的预留,选择保留二级子域名,设置一个二级子域名名称,点击保留,保留成功后复制保留的二级子域名名称:

image-20250311160957447

保留成功后复制保留成功的二级子域名的名称:mymego,大家也可以设置自己喜欢的名称。

image-20250311161019348

返回 Cpolar web UI 管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道:mediago,点击右侧的编辑:

image-20250311161117843

修改隧道信息,将保留成功的二级子域名配置到隧道中

  • 域名类型:选择二级子域名
  • Sub Domain:填写保留成功的二级子域名:mymego

点击更新(注意,点击一次更新即可,不需要重复提交)

image-20250311161153702

更新完成后,打开在线隧道列表,此时可以看到公网地址已经发生变化,地址名称也变成了固定的二级子域名名称的域名:

image-20250311161232327

使用上面的任意一个固定的二级子域名公网地址在浏览器中访问,可以看到成功打开 MediaGo 的管理界面,现在开始就不用每天都更换随机公网地址来远程访问本地 nas 中部署的 MediaGo 下载神器了。

image-20250311161421862

以上就是如何在 fnOS 飞牛云 NAS 中本地部署 MediaGo 下载工具,并结合 cpolar 内网穿透工具配置固定不变的二级子域名公网地址,实现随时随地远程访问本地部署的 MediaGo 下载视频的全部流程,感谢您的观看,有任何问题欢迎留言交流。

觉得有用的话点个赞 👍🏻 呗。
❤️❤️❤️本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!😄😄😄

💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏下吧,非常感谢!👍 👍 👍

🔥🔥🔥Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧!🌙🌙🌙

img

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2314972.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

PyQt基础——简单的窗口化界面搭建以及槽函数跳转

一、代码实现 import sysfrom PyQt6.QtGui import QPixmap from PyQt6.QtWidgets import QApplication, QWidget, QPushButton, QLabel, QLineEdit, QMessageBox from PyQt6.uic import loadUi from PyQt6.QtCore import Qtclass LoginWindow(QWidget):def __init__(self):sup…

【Java--数据结构】优先级队列( PriorityQueue)

一. 优先级队列 1.1 优先级队列的概念 优先级队列是一种特殊的队列,它在入队时会根据元素的优先级进行排序,优先级最高的元素排在队列的前面,出队时会优先出队优先级最高的元素。 1.2 优先级队列的区别 (1)与普通…

【 <一> 炼丹初探:JavaWeb 的起源与基础】之 JavaWeb 项目的部署:从开发环境到生产环境

<前文回顾> 点击此处查看 合集 https://blog.csdn.net/foyodesigner/category_12907601.html?fromshareblogcolumn&sharetypeblogcolumn&sharerId12907601&sharereferPC&sharesourceFoyoDesigner&sharefromfrom_link <今日更新> 一、开发环境…

【AIGC】OpenAI 集成 Langchain 操作实战使用详解

目录 一、前言 二、前置准备 2.1 安装 Langchain必须的依赖 2.1.1 python环境 2.1.2 langchain openai 环境 2.1.3 准备一个apikey 2.1.4 langchain 核心组件 三、Langchain 各组件使用 3.1 Chat models组件 3.1.1 Invocation 使用 3.1.1.1 结果解析 3.2 提示词模板…

Xxl-Job学习笔记

目录 概述 核心架构 核心特点 应用场景 什么是任务调度 快速入门 获取源码 初始化调度数据库 基本配置 数据源datasource 邮箱email&#xff08;可选&#xff09; 会话令牌access token 启动调度中心 启动执行器 依赖 yaml基本配置 XxlJobConfig类配置 定义执…

SAIL-RK3576核心板应用方案——无人机视觉定位与地面无人设备通信控制方案

本方案以 EFISH-RK3576-SBC工控板 或 SAIL-RK3576核心板 为核心&#xff0c;结合高精度视觉定位、实时通信与智能控制技术&#xff0c;实现无人机与地面无人设备的协同作业。方案适用于物流巡检、农业植保、应急救援等场景&#xff0c;具备高精度定位、低延迟通信与强环境适应性…

CSS 入门指南(一):基本概念 选择器 常用元素属性

一、初识 CSS 1, CSS 定义 层叠样式表(Cascading Style Sheets&#xff0c;缩写为 CSS)&#xff0c;是一种 样式表 语言&#xff0c;用来描述 HTML 文档的呈现&#xff08;美化内容&#xff09; CSS 能够对网页中元素位置的排版进行 像素级 精确控制&#xff0c;实现美化页面…

HTML5(Web前端开发笔记第一期)

p.s.这是萌新自己自学总结的笔记&#xff0c;如果想学习得更透彻的话还是请去看大佬的讲解 目录 三件套标签标题标签段落标签文本格式化标签图像标签超链接标签锚点链接默认链接地址 音频标签视频标签 HTML基本骨架综合案例->个人简介列表表格表单input标签单选框radio上传…

【AIGC】计算机视觉-YOLO系列家族

YOLO系列家族 &#xff08;1&#xff09;YOLO发展史&#xff08;2&#xff09; YOLOX&#xff08;3&#xff09; YOLOv6&#xff08;4&#xff09; YOLOv7&#xff08;5&#xff09; YOLOv8&#xff08;6&#xff09; YOLOv9&#xff08;7&#xff09;YOLOv10&#xff08;8&…

The First项目报告:重塑 DeFi 流动性的革新者,ELX 即将登陆 The First

随着去中心化金融&#xff08;DeFi&#xff09;的持续发展&#xff0c;流动性问题一直是各类去中心化交易所&#xff08;DEX&#xff09;和项目方面临的核心挑战。传统的做市模式往往需要依赖中心化流动性提供者&#xff0c;而这些机构的资金控制能力可能影响代币价格波动&…

OpenCV连续数字识别—可运行验证

前言 ​ 文章开始&#xff0c;瞎说一点其他的东西&#xff0c;真的是很离谱&#xff0c;找了至少两三个小时&#xff0c;就一个简单的需求&#xff1a; 1、利用OpenCV 在Windows进行抓图 2、利用OpenCV 进行连续数字的检测。 3、使用C&#xff0c;Qt 3、将检测的结果显示出来 …

LiveGBS流媒体平台GB/T28181功能-海康大华宇视华为像头GB28181国标语音对讲语音喊话需要的摄像头设备及服务HTTPS准备

LiveGBS海康大华宇视华为像头GB28181国标语音对讲语音喊话需要的摄像头设备及服务HTTPS准备 1、背景2、准备2.1、服务端必备条件&#xff08;注意&#xff09;2.2、准备语音对讲设备2.2.1、 大华摄像机2.2.1.1、 配置接入示例2.2.1.2、 配置音频通道编号 2.2.2、 海康摄像机2.2…

第十五章:go package 包的管理

import f "fmt"   // 注意 这里 f 是包的别名 init初始化函数 在每一个Go源文件中&#xff0c;都可以定义任意个如下格式的特殊函数&#xff1a; func init(){// ... } package&#xff1a;声明包的关键字 packagename&#xff1a;包名&#xff0c;可以不与文…

deepseek的regflow安装mac版本

deepseek的ragflow部署安装 一:ollama安装,自行完成,我本地已安装 二:查看大模型情况oll::命令ollama list,我本地无ragflow 三:docker安装:命令docker version ,自行完成,我本地已安装 四:安装知识库软件ragflow: 简单科普下Ragflow 是一个基于深度学习模型的问答生成工具&…

文献分享: 对ColBERT段落多向量的剪枝——基于学习的方法

原论文 1. 导论 & \textbf{\&} &方法 1️⃣要干啥&#xff1a;在 ColBERT \text{ColBERT} ColBERT方法中&#xff0c;限制每个段落要保留的 Token \text{Token} Token的数量&#xff0c;或者说对段落 Token \text{Token} Token进行剪枝 2️⃣怎么干&#xff1a;注…

社交软件频繁更新,UI 设计在其中扮演什么角色?

在当今数字化时代&#xff0c;社交软件已成为人们日常生活中不可或缺的一部分。随着科技的飞速发展和用户需求的不断变化&#xff0c;社交软件更新频率日益加快。在这频繁更新的背后&#xff0c;UI 设计扮演着至关重要的角色&#xff0c;它如同社交软件的 “门面担当” 与 “交…

Gemini Robotics:Google DeepMind 让 AI 机器人真正“动”起来!

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

概率论的基本知识

逆概率还不懂&#xff0c;改天再想想。 联合概率 联合概率&#xff08;Joint Probability&#xff09; 是概率论中的一个重要概念&#xff0c;用于描述多个随机变量同时取某些值的概率。联合概率可以帮助我们理解多个变量之间的关系。

AI大数据挖掘的威力

通过AI挖掘大数据可以发现很多世界上用传统方法无法发现的潜在规律。 人类群体可以被精准的操控&#xff0c;这在AI发达的未来会越来越现实&#xff0c;甚至可以在社会动荡前夕精准清理权威节点。 基于AI与大数据的人类群体潜在规律发现 随着AI和大数据技术的深度结合&#xf…

使用服务器如何DNS呢

莱卡云服务器 DNS 配置指南 一、配置云服务器本地 DNS ‌修改网络配置文件‌ ‌Ubuntu/Debian‌&#xff1a; bashCopy Code sudo nano /etc/network/interfaces # 添加或修改 DNS 配置 dns-nameservers 8.8.8.8 8.8.4.4 *&#xff08;保存后重启网络服务&#xf…