Skip to content

YiYi Media自托管媒体管理系统 · 单机版 / 分布式版

兼容 Emby 生态客户端,完全私有化部署。单机版三个容器开箱即用、内置存储与播放入口;分布式版把控制面拆到多台机器,工作节点独立横向扩展、媒体流量不经过控制面。

YiYi Media 管理后台仪表盘,展示在线节点、用户、当前播放、媒体条目、任务与近 7 天播放趋势

想先看看它实际跑起来什么样?

站点没有公开的演示环境——里面涉及真实媒体库与用户数据。想体验、想问选型与部署、或者想确认某个功能到底做到什么程度,直接加 Telegram 群联系我们安排。

端到端链路

从网盘到播放,中间不断链

很多自建方案的痛点是各环节都能跑但拼不起来。YiYi Media 把它们收进同一个控制面, 每一步的产出直接成为下一步的输入。

01
装单机版
克隆部署包(main 分支),.env 里填一个服务器地址,sudo ./install.sh。起三个容器,密钥自动生成、授权公钥自动同步。
02
网页激活
打开 18080 端口,输入发布方给的一次性授权码,然后创建首个管理员并登录。
03
确认内置节点
单机版固定内置一个 Storage 与一个 Play Agent,随主应用安装启动。到节点管理确认两者在线即可,不需要安装任何东西。
04
接盘并刮削
文件管理里配好挂载源,勾选媒体分类文件夹发起分类刮削。首次要选「覆盖」。
05
建库并同步
媒体管理里新建媒体库、绑定刚刮削过的来源目录、点同步。同步前会先给一份 Dry-run 预览。
06
开放播放
建用户或发注册码。用户把专属地址填进 Emby 生态客户端即可播放,也可以在门户里直接看。
两种拓扑

单机版三个容器起步,分布式版把负载拆开

单机版部署把八个服务收进一个 yiyi-app 容器,配内置 PostgreSQL 与 Redis, 固定内置一个 Storage 与一个 Play Agent——装完即用,不需要部署任何节点。 分布式部署则把控制面按角色拆到多台机器,并把存储与播放变成两条可横向扩展的扩容轴。

📦单机版:三个容器,节点已内置 一台服务器跑 yiyi-app + postgres + redis。 Storage 与 Play Agent 随主应用安装、启动、升级,节点管理只需确认它们在线。
🛰️分布式版:播放流量不经过控制面 控制面只提供元数据与鉴权,不在字节路径上。把播放节点搬到别的机器后, 后台、刮削与同步都不会被晚高峰播放拖慢。这是 分布式 Edition 的能力。
客户端 任意设备
Emby 生态客户端
填地址与账号即用
浏览器
管理后台 / 用户门户
单机版部署 1 台 · 3 个容器
yiyi-app
frontend/gateway/config/user/media/storage/play-agent/license-agent
postgres
四个业务库
redis
缓存

发布 18080(Web 入口)与 19090(播放客户端直连)。Storage 与 Play Agent 为内置节点,用户只能新增手动反代地址。

分布式部署 · 控制面 4 台
control
注册中心 + 数据库 + 授权代理
user
账号 / 配额 / 报表
media
媒体元数据与聚合
edge
网关 + 前端(必须同机)
分布式部署 · 外部工作节点 N 台 · 任意位置 · 可多实例
storage #1
18084 · 挂 Google Drive
storage #N
18084 · 按配额继续加
play-agent #1
19090 · 出口线路 A
play-agent #M
19090 · 出口线路 B

扛网盘配额、刮削算力、出口带宽与并发播放。加节点不需要改控制面配置,但受授权配额限制。

两条边界要写清楚:单机版不能靠加节点扩容, maxStorageNodes=1 只代表那两个内置节点;两种模式也不能只改 .env 或角色变量互转,升级为分布式版必须走授权的版本升级与拓扑迁移。 详见 部署模式与版本选择 与 单机版迁移到分布式版。 另外跨节点并行来自「谁收到刮削请求,谁在自己进程里立刻开工」,定时兜底任务每次只派给一个节点。

规模

这些数字都不是愿景

每一项都能在功能文档里找到对应的操作路径。

2 + 1
深度适配的存储:Google Drive、115 与本地磁盘
14 个
后台菜单入口,分属六个分组
25 个
内置定时任务,全部可启停、改频率、手动触发
6 种
登录方式,含 Telegram 四种与 Google
12 类
传输任务,16 种状态,可暂停恢复取消重试
3 档
媒体同步模式,均可先 Dry-run 预览
8 项
可委派菜单权限,交给非管理员运营
2 道
媒体来源访问防线:列表过滤 + 输出前拦截
产品截图

后台长什么样

截图取自真实运行环境并已脱敏,点击可查看大图。

文件管理:把网盘当本地目录用

浏览任意挂载源下的文件与目录,支持当前目录搜索与跨挂载全局搜索,选中后可批量重命名、移动、复制与删除。

  • 全局搜索优先走 Provider 原生接口,并与本地持久目录索引聚合去重
  • 浏览器上传走分片链路,可暂停恢复、断点续传
文件管理页面:节点选择器、挂载源下拉、文件列表与批量操作工具栏

媒体管理:聚合而不是重新扫描

中央媒体库不扫描磁盘,而是聚合存储侧已经刮削好的来源目录。一个库可以挂多个节点、多个网盘,同一部作品的多份文件合并成一个条目。

  • 同步前先 Dry-run:新增多少、更新多少、哪些含用户编辑,逐条可勾选保留
  • 作品 / 季 / 集三级元数据覆盖,覆盖值优先于刮削结果
媒体管理页面:媒体库侧边栏与条目网格

现在就把媒体服务握在自己手里

从单机版三容器起步,一台服务器、一条安装命令、两个内置节点即可跑通全链路。需要分散负载与横向扩容时,再按受控流程升级到分布式版。

自托管媒体管理系统(单机版 / 分布式版) · 想先体验或有问题,加 Telegram 群:t.me/yiyi_media_group