使用手册
HyperMS 使用手册
从部署到 Emby 联动,按实际使用顺序写。遇到问题时,先从左侧目录跳到对应章节。
快速开始
先把服务启动、账号登录、网盘连上。其他设置可以等流程跑通后再补。
部署前准备
- Docker + Docker Compose —— 推荐部署方式。下面这一份 Compose 会同时启动 Redis、PostgreSQL 和 HyperMS
- 一个媒体目录 —— STRM 文件会写到宿主机目录,再映射给 Emby 扫描。建议一开始就定好路径
- 网络能出去 —— 如果需要刮削 TMDB、连接 Telegram 频道,确保容器能访问外网
- 不用克隆项目,也不用本地构建 —— 主服务直接使用 Docker Hub 上的
gravityle/hyperms:latest 镜像
如果你打算对接 Emby:一开始就把宿主机目录和容器内的 /media 映射关系确定好。很多人遇到"STRM 生成了但 Emby 扫不到",其实就是两边看到的路径不一样。
复制 Compose 配置
新建一个目录,把下面内容保存为 docker-compose.yml。这就是完整部署文件,不需要再额外准备数据库 Compose。
# 根据实际情况调整挂载目录路径
services:
# Redis 服务
redis:
image: redis:latest
container_name: redis
restart: unless-stopped
networks:
- hms_network
volumes:
- ./data/docker/redis/data:/data
environment:
TZ: Asia/Shanghai
# PostgreSQL 主数据库
pgsql:
image: postgres:17-alpine
container_name: postgresql
restart: unless-stopped
networks:
- hms_network
volumes:
- ./docker/postgresql/data:/var/lib/postgresql/data
environment:
POSTGRES_DB: hyperms
POSTGRES_USER: hyperms
POSTGRES_PASSWORD: hyperms
TZ: Asia/Shanghai
# HyperMS 主服务
hms:
image: gravityle/hyperms:latest
container_name: HyperMS
restart: unless-stopped
networks:
- hms_network
depends_on:
- redis
- pgsql
environment:
TZ: Asia/Shanghai
HMS_DB_URL: postgresql+asyncpg://hyperms:hyperms@pgsql:5432/hyperms
HMS_REDIS_URL: redis://redis:6379/0
HMS_REDIS_KEY_PREFIX: hyperms
# HMS_DISABLE_AUTH: "true" # 关闭登录认证,不建议公网使用
# HMS_ADMIN_KEY: xxxxxxxx # 自定义字符串,用于重置管理员密码
ports:
- "8115:8115"
- "8196:8196"
volumes:
- ./data/docker/hyperms/media:/media
networks:
hms_network:
name: hms_network
启动服务
docker compose up -d
默认入口:浏览器打开 http://127.0.0.1:8115。如果不需要 Emby 代理端口,可以把 8196:8196 删掉。
首次登录
- 找初始密码 —— 首次启动时,系统会在容器日志里输出临时管理员账号和密码。执行
docker logs HyperMS 查看
- 修改密码 —— 登录成功后,进设置页把管理员用户名和密码改成你自己的。临时密码留在日志里不安全
- 忘了密码怎么办 —— 修改容器部署环境变量,添加
HMS_ADMIN_KEY,启动容器后在登录页走重置流程。
先填这些设置
不必一次配完,但下面几项会影响搜索、转存、整理和播放。
| 设置项 | 干嘛用的 | 不填会怎样 |
| 管理员账号 |
把临时密码换掉 |
别人看了日志就能登你的系统 |
| 115 / 夸克登录 |
让系统能访问你的网盘 |
搜索、转存、STRM 都无法正常使用 |
| 默认保存目录 |
转存文件和 STRM 的落点 |
系统不知道文件往哪放 |
| TMDB API Key |
匹配片名、拉海报和简介 |
整理出来的内容没有元数据 |
| Emby 地址 |
让系统能通知 Emby 刷新 |
STRM 生成了但播放器不知道 |
检查是否可用
- 改完管理员密码,确认能正常登出再登入
- 去设置页看 115 或夸克的登录状态是不是"正常"
- 回首页搜一部片,看看能不能搜到结果
- 贴一个 115 分享链接,看能不能解析出文件列表
- 去任务页看一眼,确认后台任务能创建、能执行、能看到进度
建议节奏:先手动跑完一遍"搜片 → 转存 → 整理 → 生成 STRM",确认每一步正常,再开启自动扫描和自动整理。
日常使用
日常操作集中在首页:搜内容、处理链接、加订阅。任务、索引和规则维护放在工具页。
搜索框支持哪些输入
| 你输入的 | 系统会怎么做 | 接下来你可以 |
| 片名 / 剧名 |
显示搜索结果,带出海报、年份、简介 |
点进去看详情、补元数据、加订阅 |
| 115 分享链接 |
校验链接还有效吗,能打开吗 |
转存到自己网盘,或者直接生成 STRM |
| 夸克分享链接 |
解析文件列表,显示目录结构 |
转存、查看文件、后续整理 |
| 磁力 / ED2K |
进入离线流程(如果网盘支持) |
添加离线任务,完成后继续整理 |
使用方式:首页搜索框是主要入口。片名、分享链接、磁力或 ED2K 都可以直接粘贴进去。
常用场景
场景一:拿到了一个分享链接
把链接贴进首页搜索框,系统会校验它还有没有效。有效的话,你可以选择"转存到我网盘"或者"直接生成 STRM"(如果你只想播、不想占网盘空间)。
场景二:想把资源整理进家庭库
先转存或导入,然后让系统扫描、补全元数据、按电影/剧集分类,最后统一生成 STRM。Emby 扫一下新目录,海报和播放就都有了。
场景三:只有磁力或 ED2K 链接
直接贴到首页。如果网盘支持离线,系统会先把资源离线到网盘,然后再走整理流程。不支持离线的话,暂时只能先存着链接。
场景四:长期追一部剧
搜到这部剧后,点"添加订阅"。系统会定期检查有没有新集数。发现更新后自动转存、整理、通知你。稳定后再开自动生成 STRM。
场景五:维护一个索引库
在网盘浏览器里给常用目录建索引,后续去"索引管理"里同步、发布。适合你有大量存量资源,想批量生成 STRM 的情况。
场景六:旧的 STRM 链接失效了
进 STRM 转换工具,批量选中旧的 STRM 文件,预览新链接,确认没问题后一键改写。不用手动一个个改文本文件。
排查顺序
先看任务,再看操作记录,最后看日志。这样最容易定位问题发生在哪一步。
- 任务页 —— 你点了一个操作,先看任务页里有没有出现对应任务。如果没出现,说明请求根本没发出去
- 操作记录 —— 任务出现了但结果不对,看操作记录。这里记录了系统具体做了哪些动作,比如"尝试转存到 /电影/2024/"
- 日志页 —— 操作记录里没有异常,但结果还是不对,去看日志。这里有原始报错、外部服务返回的异常信息
建议:先确认任务有没有生成,再确认操作是否符合预期,最后再看日志原文。
整理输出
资源导入后,整理、刮削和 STRM 会决定 Emby 里的显示和播放效果。这里按流程说明每一步。
资源怎么进你的网盘
从分享链接转存
在首页粘贴 115 或夸克分享链接,系统校验后会显示文件列表。选择"转存",文件就会复制到你设定的默认目录里。转存是复制,不是移动,原分享不受影响。
从离线任务获取
粘贴磁力或 ED2K 链接,系统会调用网盘的离线下载功能。离线完成后,文件已经在你的网盘里,可以直接进入整理流程。
注意:115 对重复转存有限制,短期内重复转存同一个分享可能会失败。
元数据补全
系统会根据文件名和目录结构匹配 TMDB,并补上海报、简介、年份、演员等信息。
- 系统先猜 —— 根据文件名和目录结构,系统会调用 TMDB 搜索匹配的影片。如果文件名规范(比如"沙丘.2021.1080p"),命中率很高
- 猜错了你纠正 —— 如果匹配错了(比如把电视剧匹配成了电影),去"手动整理"页里重新指定正确的 TMDB ID
- 写规则让它以后自动猜对 —— 在"TMDB 规则"里可以写正则或关键词映射,比如凡是文件名带"S01E"的,一律按剧集处理
没有 TMDB Key 会怎样?系统无法自动整理媒体进入库,无法使用 Emby 插件。强烈建议尽早申请 TMDB API Key,免费且简单。
STRM 文件
STRM 是一个很小的文本文件,里面写着播放地址。Emby 扫描到它以后,会按这个地址拉流播放。
- 不占本地空间 —— 一部电影几十 GB,STRM 文件只有几百字节。本地磁盘只需要存这些索引文件,视频本身还在网盘里
- Emby 能直接识别 —— STRM 文件放在 Emby 的媒体库目录里,Emby 扫描时会把它当成普通视频文件显示。点播放时读取里面的直链地址,自动走网盘播放
- 链接失效可以批量换 —— 如果网盘直链格式变了,不用重新生成所有 STRM。用"STRM 转换"工具,批量改写文件里的链接地址即可
路径映射是关键:HyperMS 生成 STRM 时写的路径,必须是 Emby 实际能访问到的路径。如果两边对不上,Emby 就扫不到。具体怎么配,看
播放器联动 章节。
什么时候开启自动整理
| 阶段 | 策略 | 适合谁 |
| 阶段一 |
全部手动确认 |
刚上手,熟悉系统的判断逻辑 |
| 阶段二 |
自动整理 + 手动生成 STRM |
信任系统的分类能力,但 STRM 还想自己把关 |
| 阶段三 |
全自动 |
流程跑稳定了,订阅检查 + 自动转存 + 自动整理 + 自动生成 STRM + 通知推送 |
播放器联动
Emby 插件用于将 HyperMS 的虚拟媒体库映射进 Emby。找资源、整理和生成 STRM 仍由 HyperMS 处理,Emby 负责扫描和播放。无需生成 STRM 文件。
两步装好插件
第 1 步:复制插件文件
下载项目提供的 HyperMSPlugin.dll,复制到 Emby 的插件目录,然后重启 Emby。
Emby 插件
HyperMSPlugin.dll · 约 750 KB
下载 DLL
# Docker 部署的 Emby 示例
docker cp HyperMSPlugin.dll emby-server:/config/plugins/
docker restart emby-server
不是 Docker 部署?把 HyperMSPlugin.dll 放进 Emby 配置目录下的 plugins 文件夹,然后重启 Emby 即可。
第 2 步:在 Emby 后台配置
- 打开 Emby Dashboard
- 进入 Plugins → HyperMS
- 填写 Server URL —— 这是最关键的一项。注意:这里要填 Emby 容器内部能访问到的 HyperMS 地址,不是你在浏览器里访问的地址。举例:如果你用上面的 Compose,并让 Emby 加入同一个网络,可以填
http://hms:8115
- 保存并重启 Emby
路径映射最容易出错
HyperMS 生成 STRM 文件时写的是容器内部路径,Emby 读取时也必须是同一个物理路径。两边对不上,Emby 就扫不到。
✓ 正确的例子
宿主机 /mnt/media 同时映射给 HyperMS 和 Emby 的 /media。
HyperMS 生成:/media/电影/沙丘 (2021)/沙丘.strm
Emby 扫描:/media/电影
两边路径完全一致,能扫到。
✗ 错误的例子
HyperMS 映射 /media,Emby 映射 /data/media。
HyperMS 生成:/media/电影/...
Emby 扫描:/data/media/电影
Emby 看到的路径和 STRM 里写的不一样,扫不到。
简单判断方法:在 Emby 容器里执行 cat /media/电影/某文件.strm,如果能读到内容,说明路径映射是对的。如果提示"No such file",就是路径没对上。
确认插件生效
- 插件列表能看到 —— 进 Emby 的插件列表,确认 HyperMS 插件出现在已安装列表里
- 配置能保存 —— 填完 Server URL 保存后,退出重进插件页,确认内容还在
- 搜索有结果 —— 在 Emby 客户端里搜索一部本地没有的片,看结果里有没有来自 HyperMS 的条目
插件常见问题
- 插件不显示:先重启 Emby,再确认 DLL 是否真的在
/config/plugins/ 目录下
- 搜索没结果:检查 Server URL 填的是不是 Emby 能访问的地址。在 Emby 容器里
curl 一下这个地址,看能不能通
- 配置不保存:检查 Emby 配置目录的权限,确保容器有写入权限
- 有结果但播不了:通常不是插件的问题,是 STRM 或网盘直链的问题,检查 STRM 地址和分享链接是否有效
后台管理
后台用于处理维护工作:任务、订阅、索引、权限、STRM 批量改写和日志排查。
设置页速览
设置页顶部按标签分组。右上角的 保存 会写入当前修改,取消 只关闭面板,退出图标用于结束当前登录会话。
通用
- 账号管理:修改管理员用户名和密码;子账号账号密码只在启用子账号后生效。
- 子账号功能:总开关控制子账号能否登录,下方权限勾选决定它能用哪些网盘、资源源、转存和 STRM 功能。
- 代理设置:给 TMDB、Telegram 等外部服务使用;检测 按钮会测试代理连通性。
- 通用配置:主要控制首页推荐源等基础显示行为。
网盘
- 115 / 夸克配置:Cookie 决定网盘登录状态;扫码 会打开登录二维码弹窗,浏览 会打开网盘目录弹窗,可在目录弹窗中创建索引和分享。
- 电影 / 电视剧转存目录:选择 按钮会打开目录选择弹窗,保存后作为默认转存落点。
- STRM 相关设置:网关地址决定 STRM 播放入口;自动清理会在取到播放直链后清理临时文件。
- 目录、格式和同步下载:手动选目录开关会在转存或生成 STRM 前弹出目录选择;小文件过滤、格式白名单和同步下载范围会影响最终生成哪些文件。
数据源
- 推送设置:控制是否接收其他实例推来的转存、生成 STRM、创建分享消息;自动扫描、自动整理、自动生成 STRM 会让入站分享进入自动化流程。
- 盘搜服务:启用开关决定是否调用盘搜;资源过滤开启后,只保留当前已配置网盘可处理的结果。
- 影巢 / 聚影:启用开关决定是否作为搜索来源;影巢的 签到 按钮用于领取积分(仅影巢会员可见),积分阈值控制订阅时是否自动解锁资源。
- Telegram 授权:扫码授权 会打开 Telegram 授权弹窗,授权后才能使用 Telegram 账号搜索;取消授权会移除当前会话。
媒体库
- 本地媒体库概览:显示媒体主记录、待整理、已补全、待补全和失败数量,用来判断整理状态。
- Emby / 极影视 / 飞牛影视:填写地址和凭据后,系统会显示媒体库概览;展开按钮只用于查看子媒体库分类。
- TMDB API:用于搜索影片信息、补全海报、简介、年份和剧集数据。
- 扣子智能体:授权 会打开设备授权弹窗,用于更智能地识别标题、年份、编码等信息;取消授权会清掉当前绑定。
通知
- 通知开关:先选择哪些场景要通知,比如分享整理完成、订阅更新、订阅完结。
- 企微通知:填写企业微信参数后才能启用;发送通知 按钮用于测试当前配置是否能发出去。
- Telegram 通知:填写 Bot Token 和用户 ID 后才能启用;发送通知 按钮用于发送测试消息。
关于
- 版本信息:查看当前程序版本和是否有可升级状态。
- 定时设置:订阅检查、增量同步、链接有效期检查都有独立开关和间隔;关闭后对应后台任务不会自动跑。
- 管理工具:这里的按钮会打开对应工具面板,比如媒体库、订阅、任务、索引、互联、链接、手动整理、整理规则、操作日志和 STRM 转换。
工具说明
| 工具 | 什么时候用 |
| 媒体库管理 |
查看整理好的内容,确认分类对不对、元数据齐不齐,手动修正错误信息 |
| 订阅管理 |
手动触发检查、暂停/删除订阅,定期查看有没有长期没更新的订阅 |
| 任务管理 |
查看进度、失败原因、卡住的任务和重试入口。系统异常时,先看这里 |
| 索引管理 |
给网盘目录建索引,批量生成 STRM,同步文件变动 |
| 互联管理 |
保存其他 HyperMS 实例地址,实现跨实例搜索和资源推送 |
| 链接管理 |
查看导入的分享链接状态:哪些已转存、哪些已失效、哪些还没处理 |
| 手动整理 / TMDB 规则 |
自动整理没认出的片名、TMDB 匹配错了,在这里纠正。也可以写规则让系统以后自动按你的习惯命名 |
| STRM 转换 / 日志 |
批量改写旧 STRM 链接地址。日志页用来查系统级错误,比操作记录更底层 |
子账号权限
给家人或朋友使用时,建议只开放必要权限。
- 只给搜索 —— 适合只想让别人查查看有什么资源,不开放任何修改操作。最安全
- 搜索 + 转存 —— 适合让家人或朋友帮忙把资源转存到统一目录。但要注意会消耗你的网盘空间
- 链接处理助手 —— 额外开放 STRM 生成权限,但仍然不给设置页和管理工具
权限建议:设置页和管理工具页尽量只保留给管理员。子账号的网盘权限也建议分开给(比如只给 115 不给夸克),万一账号泄露损失可控。
浏览器插件
如果你经常在网页上收集 115/夸克分享链接,希望边浏览边入库,不用来回复制粘贴,那浏览器插件很适合你。
浏览器扩展
hyperms-browser-import-extension.zip · 约 43 KB
下载扩展
下载后先解压,再到 Chrome / Edge 的扩展管理页开启开发者模式,选择“加载已解压的扩展程序”。
最关键的四个设置:
- HyperMS 地址 —— 按实际填写,比如
http://127.0.0.1:8115
- 连接测试 —— 先确认插件能访问到你的 HyperMS
- 自动入库 —— 熟悉效果后再开启,别一上来就全自动
- 指定网站 —— 控制在哪些站点触发,避免误识别
常见问题
多数问题可以从任务页、操作记录和日志定位。下面按常见症状整理。
我登录不了怎么办
先确认你用的是当前有效的管理员账号。首次启动时系统会在容器日志里输出临时账号密码,执行 docker logs HyperMS 查看。
如果部署时填了 HMS_ADMIN_KEY,可以在登录页走管理员密码重置流程。没填的话只能进数据库改或者重装。
页面能打开,但转存总是失败
按这个顺序检查:
- 网盘登录状态是不是"正常"?过期了就重新扫码或更新 Cookie
- 默认目标目录设了吗?没设的话系统不知道往哪转
- 当前账号有没有转存权限?如果是子账号,可能被管理员限制了
STRM 生成了,但 Emby 扫不到
最常见的原因是路径映射不一致。检查三点:
- HyperMS 生成的 STRM 文件,是不是放在 Emby 实际扫描的目录里?
- 容器里的
/media 和宿主机的目录映射关系,两边是否一致?
- Emby 里对应的媒体库路径,是否包含了 STRM 所在的子目录?
Emby 扫到了,但播放报错
这说明 STRM 文件本身没问题,问题出在直链解析上。去 HyperMS 的任务页看有没有"解析播放地址"相关的失败任务。
也可能是网盘登录失效了,直链拿不到。重新登录网盘后再试。
TMDB、Telegram、影巢连不上
先回设置页的"通用"里检查代理配置。如果容器走不了外网,这些服务全部会超时。
确认网络没问题后,再用测试按钮或测试消息验证单个服务是否可用。不要同时排查多个,容易搞混。
订阅一直没更新
三步排查:
- 订阅检查的定时开关开了吗?去设置页的"关于"里看调度任务是否启用
- 任务页里有没有出现"订阅检查"任务?如果没出现,说明定时器没触发
- 有任务但失败了?看日志里的具体报错,可能是网盘空间满了、链接失效、或者 TMDB 匹配不到
索引同步不到最新文件
检查 115 生活事件功能是否打开。
检查索引定时同步是否启用,以及目标目录在网盘里是否还存在(有时候文件被移动或删除了)。
也可以手动在索引管理页点"立即同步",强制刷新一次。如果手动同步成功但自动不同步,说明定时器有问题,看日志。
完全不知道从哪里开始排查
按这个顺序看:
- 任务页:你点的操作有没有生成任务?任务状态是"成功"、"失败"还是"卡住"?
- 操作记录:系统实际执行了哪些动作?和你预期的一样吗?
- 日志页:看报错原文。如果是外部服务报错(比如 TMDB 429、网盘 401),日志里会有原始返回。
如果这三页都看不出问题,再考虑是不是设置填错了(比如路径、API Key、地址)。
还解决不了?
回到对应章节,对照配置要求和验证步骤再查一遍。
去社群提问
带上任务页截图、相关时间点的日志片段、设置页关键配置(敏感信息打码)。信息越全,别人越能精准定位。