MoonTV:开源跨平台影视聚合播放器
MoonTV(项目仓库名 LunaTV)是一个开箱即用的跨平台开源影视聚合播放器。它基于现代 Web 技术栈构建,支持多资源搜索、在线播放、收藏同步及云端存储,让用户能随时随地畅享海量影视内容。
GitHub 地址:https://github.com/MoonTechLab/LunaTV
核心特性
技术亮点
- Next.js 14:采用最新 React 框架,保证性能与体验
- Tailwind CSS:实用优先的样式方案
- TypeScript:类型安全开发,降低维护成本
- HLS 播放:原生流媒体支持,适配多种格式
- PWA 支持:渐进式 Web 应用,可安装至桌面或手机
功能体系
内容搜索 支持多源聚合搜索,具备智能匹配与实时结果展示能力。系统内置缓存机制与去重处理,确保搜索结果的质量与速度。结果页提供完整信息、分类展示及缩略图预览,操作快捷。
视频播放 播放器支持多格式与 HLS 流媒体,可切换清晰度、加载字幕及音轨。针对播放体验做了缓冲优化与画质自适应,支持全屏模式与键盘快捷键。皮肤自定义与错误处理机制完善,兼容主流浏览器。
数据管理 提供完整的收藏管理与观看记录功能,支持进度保存与隐私控制。用户数据可在多端同步,包含备份恢复与离线支持。系统允许自定义分类、智能排序及元数据导入导出。
系统管理 配置涵盖主题设置、播放参数及网络配置。内置系统监控、日志管理及故障诊断工具。安全方面包含访问控制、数据加密及安全审计,确保合规性。
部署指南
环境准备
- 硬件:建议 8GB RAM,20GB+ 存储空间,多核 CPU
- 软件:Docker, Node.js, Redis/Kvrocks, 现代浏览器
- 服务:可选域名与 SSL 证书,持久化存储
Docker 部署
推荐使用 Docker Compose 快速启动。克隆仓库后配置环境变量即可。
git clone https://github.com/MoonTechLab/LunaTV.git
cd LunaTV
cp .env.example .env
nano .env
# 修改 USERNAME 和 PASSWORD 等配置
docker-compose up -d
访问 http://localhost:3000 即可使用。
存储后端选择
项目支持 Kvrocks 或 Redis 作为存储后端。
Kvrocks 示例
version: '3.8'
services:
moontv-core:

