免费影视媒体库 MoonTV 部署全教程:跨设备同步 · 多用户管理
MoonTV 是一个开源、完全免费的影视聚合平台,支持 Cloudflare Pages、Vercel、Docker 等多种部署方式。一键部署即可拥有网页端、手机端、电视端都能访问的私有影视库,多源搜索、无广告、跨设备同步——真正的看片神器。
🌟 MoonTV 能做什么?为什么选择它?
在如今视频平台会员费高涨、资源分散、广告泛滥的大环境下,MoonTV 提供了一个极具吸引力的解决方案:
- 聚合搜索全网资源:支持多个免费资源站,一次搜索即可获取全源结果,覆盖电影、电视剧、动漫、综艺等。
- 高清流畅在线播放:集成 ArtPlayer 和 HLS.js,播放体验媲美专业平台。
- 跨设备同步记录:支持本地存储和云端(如 Redis、Cloudflare D1),在多个设备之间同步播放进度和收藏。
- PWA 支持:可添加到桌面、主屏幕使用,离线缓存提升使用便捷度。
- 响应式布局:电脑、手机、电视屏幕完美适配,操作流畅无压力。
- 完全开源 + 私有部署:可运行在你自己的服务器或免费平台上,数据完全掌控。
- 管理员后台:支持多账户、用户管理、自定义配置(需使用云存储)。
- 无广告 / 实验性跳广告功能:告别片头片尾烦人广告。
MoonTV 不仅适合个人用户建立私有观影平台,也逐渐成为自建 NAS 用户与影视爱好者的首选播放器。
🔧 技术栈一览
分类 | 技术 |
---|---|
前端框架 | Next.js 14 (App Router) |
UI/样式 | Tailwind CSS 3 |
编程语言 | TypeScript 4 |
播放器 | ArtPlayer + HLS.js |
代码质量 | ESLint + Prettier + Jest |
部署方式 | 支持 Vercel / Cloudflare / Docker / 飞牛 OS 等 |
最新上线特性:Docker + Redis 搭建更强大
据项目官方更新(2025 年 7 月初),最新版本已支持:
- 后台管理面板:docker + redis 存储方式下,通过访问
/admin
页面,可管理站点配置、视频源、权限和用户状态。 - 定时剧集刷新功能:每小时自动更新影片 / 剧集总数,使播放记录和收藏显示更准确。
- 音量调节快捷键:桌面端支持键盘上下键调节音量,移动端直接使用设备音量键控制音量。
目前即正在开发支持 D1 和 PG 存储的版本,未来会有更多部署选择。
🚀 快速部署 MoonTV(以 Vercel 为例)
MoonTV 支持多种部署方式,其中 Vercel 是最便捷的方式之一,无需服务器、永久免费、自动构建上线,适合没有服务器的新手用户。
📦 Vercel 一键部署步骤:
前往 MoonTV GitHub 项目 并点击右上角
Fork
本仓库;登陆 Vercel,点击 Add New → Project,选择 Fork 后的仓库。
(强烈建议)设置 PASSWORD 环境变量。
保持默认设置完成首次部署。
如需自定义
config.json
,请直接修改 Fork 后仓库中该文件。
📌 每次修改代码并提交到 main
分支,Vercel 都会自动重新构建并部署最新版本。
部署完成后即可通过分配的域名访问,也可以绑定自定义域名。
🌐 其他部署方式
MoonTV 还支持通过 Cloudflare Pages、Docker、群晖 NAS、飞牛 OS 等方式部署,适合进阶用户或有本地服务器的场景。
👉 请访问官网或 GitHub 获取完整部署文档:https://github.com/senshinya/MoonTV
🔑 管理后台与高级配置
如使用 Redis、D1、Upstash 等云存储方式,MoonTV 可开启多用户与后台管理功能:
完成普通部署并成功访问。
在 upstash 注册账号并新建一个 Redis 实例,名称任意。
复制新数据库的 HTTPS ENDPOINT 和 TOKEN
返回你的 Vercel 项目,新增环境变量 UPSTASH_URL 和 UPSTASH_TOKEN,值为第二步复制的 endpoint 和 token
设置环境变量 NEXT_PUBLIC_STORAGE_TYPE,值为 upstash;设置 USERNAME 和 PASSWORD 作为站长账号
重试部署
- 设置环境变量:
USERNAME
:管理员用户名PASSWORD
:管理员密码NEXT_PUBLIC_STORAGE_TYPE
:存储类型,如 redis/d1/upstash
- 登录后访问
/admin
即可进行:- 用户权限管理
- 修改 config.json
- 查看访问记录