1383 字
7 分钟
基于 Lucky 与 QMediaSync 的飞牛远程媒体访问

基于 Lucky 与 QMediaSync 的飞牛远程媒体访问#

序言#

飞牛私有云(FnOS)近期已正式在系统层面新增对 .strm 文件挂载的支持。该特性允许用户通过轻量级的索引文件引用远程或本地媒体资源,优化了存储架构。不过,原生生成的 .strm 文件通常绑定局域网私有 IP,导致远程环境下播放链路断裂。通过 Lucky 反向代理配合 QMediaSync(QMS),可以把内网地址重构为标准的公网域名 HTTPS 链接,实现飞牛媒体在远程环境下的直接播放体验。


1 Lucky 反向代理配置建议#

作为高性能的边缘网关,Lucky 在此方案中负责处理 SSL 证书自动化管理及远程流量分发。

1.1 服务反代与端口暴露#

为了实现远程环境下对 QMS 的管理和视频流调度,需在 Lucky 中配置以下转发规则:

  • WebUI 访问:将公网域名(如 qms.域名.com)指向 QMS 的管理端口 12333。
  • 代理服务链路:反代 QMS 的代理服务端口(默认 8095),确保远程播放器发起的 HTTPS 请求能准确触达内网的文件分发层。
  • 如果需要 QMS 直接走 302 反代,可通过 Emby 或 Jellyfin 直接播放
  • 安全性增强:利用 Lucky 自动申请并部署 SSL 证书,确保所有流媒体传输均在 HTTPS 协议下加密进行。

2 QMediaSync 的容器化部署与环境搭建#

QMS 的核心价值在于其强大的路径重构与自动化同步能力。建议使用 Docker Compose 进行标准化部署,以确保配置的一致性。

2.1 Docker Compose 配置文件示例#

根据您的环境需求,建议采用如下配置:

name: qmediasync
# 默认用户名 admin, 密码 admin123
services:
qms-postgres:
# 镜像地址
image: postgres:15.4
# 容器名
container_name: qms-postgres
# 主机名
hostname: qms-postgres
environment:
POSTGRES_USER: qms-postgres
POSTGRES_PASSWORD: qms-postgres
POSTGRES_DB: qms-postgres
ports:
- 15432:5432
volumes:
- /mnt/docker/apps/qms-postgres/data:/var/lib/postgresql/data
# 重启策略,总是重启
restart: always
qmediasync:
# 镜像地址
image: qicfan/qmediasync:latest
# 容器名
container_name: qmediasync
# 主机名
hostname: qmediasync
# 环境变量:- 变量名=值
depends_on:
- qms-postgres
environment:
# 时区
- TZ=Asia/Shanghai
# 目录映射:宿主机目录:容器内目录
volumes:
# 容器配置文件路径
- /mnt/docker/apps/qmediasync/config:/app/config
# 生成 strm 文件路径
- /mnt/MediaStrm/qmediasync/media:/media
# 端口
ports:
# webUI 端口
- 12333:12333
- 12332:12332
# emby代理端口默认:http-8095 https-8094
- 7095:8095
- 7094:8094
# 重启策略,总是重启
restart: always
networks:
default:
name: qmediasync

2.2 登录账号#

浏览器访问 http://192.168.x.x:12333打开 qms ,默认账号是 admin,默认密码是admin123,密码记得修改。

添加云存储账号,可以直接扫码登录对应服务,也可以登录你的 OpenList。

2.3 .strm 设置#

预设已经可以了,你只需要填写 .strm 直接播放地址,也就是直接填写你用 Lucky 反代出去的 QMS 的 12333 地址。

2.4 Emby 设置(可选设置,飞牛媒体不需要)#

如果你要使用 Emby 或者 Jellyfin,那么你可以设置,只用设置从 Emby 那里获取的 API key 就行。如果你只用飞牛媒体读取 strm,直接跳过就行。

2.5 元数据匹配与整理(可选设置)#

如果你需要元数据匹配和整理,可以在 QMS 中设置。我是在媒体库直接分好类了,就不需要再整理;元数据匹配我更喜欢用飞牛自带功能。

2.6 .strm 同步目录#

在 .strm 同步目录中添加目录,选择你刚才登录的云存储或 OpenList,然后将云存储中的媒体库挂载到 QMS 的 /media 路径。

最后点击同步就行,他就会自动生成 strm 文件了,也可以设置定时同步。

3 飞牛媒体库整合与元数据匹配#

生成的 .strm 文件需接入飞牛媒体(FnOS Video)系统,才能转化为海报墙形式的媒体中心。

3.1 媒体库路径导入#

  • 路径选择:在飞牛媒体设置中新增媒体库,路径务必指向 QMS 任务输出的 .strm 文件夹。
  • 权限校验:确保飞牛媒体应用具有对该文件夹的读取权限。

3.2 自动化元数据匹配#

  • 元数据识别:由于 QMS 在生成 .strm 时完全继承了物理文件的命名结构,飞牛媒体的内置元数据引擎可自动匹配 TMDB 或其他元数据提供商,自动下载剧照、简介及演员信息。
  • 远程连通测试:在移动网络环境下,飞牛媒体 App 会读取 .strm 内的域名地址,通过 Lucky 建立的 HTTPS 链路直接调取视频流,跳过内网 IP 限制。
  • 这是 qms 生成的 strm 文件信息例子

4 总结#

综上所述,利用 Lucky 的反向代理能力和 QMediaSync 的 Host 重构能力,可以解决飞牛 OS 原生 .strm 文件在广域网环境下的接入问题。该方案不仅能自动生成海报墙,也能让用户在任意地点通过域名直接播放飞牛媒体库中的内容,兼顾访问便捷性和播放质量。最终效果是:飞牛媒体 App 在远程环境下也能比较流畅地播放原画视频。

播放杜比展示,网页没办法播放杜比,建议用客户端,红色的奈非 logo。

缺点展示:飞牛自带的播放器,播放的视频信息格式是不能被看到的。

这是我的飞牛媒体库

基于 Lucky 与 QMediaSync 的飞牛远程媒体访问
https://zmm.nw177.cn/posts/10-技术专栏/30-linux/10基于lucky与qmediasync的飞牛远程媒体访问/
作者
张萌萌
发布于
2026-02-08
许可协议
CC BY-NC-SA 4.0

分享文章

生成精美分享图或复制链接,与更多人分享本文。

继续阅读

沿着主题读

基于共同的标签与分类

换条路线

从其他文章中稳定抽取

评论

正在加载评论...

最后更新于 ,距今已过 262 天

部分内容可能已过时