
一、什么是 MoonTV
MoonTV 是一个跨平台的影视聚合播放器,基于 Next.js 14 + Tailwind CSS + TypeScript 构建,支持多源搜索、在线播放、收藏同步、播放记录、本地/云端存储。
功能特性:
多源聚合搜索:内置数十个免费资源站点,一次搜索返回所有来源结果
详情页展示:剧集列表、演员、年份、简介等
在线播放:集成 HLS.js 和 VidStack
收藏与继续观看:Docker 部署时支持 Redis 存储,多端同步进度
PWA 支持:可离线缓存、安装到桌面或主屏
响应式布局:桌面侧边栏 + 移动端底部导航,自适应屏幕尺寸
多部署方式:Docker 一键部署,或免费部署到 Vercel / Cloudflare Pages
智能去广告:自动跳过视频切片广告(实验性功能)

GitHub 项目地址:MoonTechLab/LunaTV
二、安装教程(推荐使用 Docker Compose 部署)
2.1 在绿联 NAS 中打开 Docker,点击"项目"→“创建”,粘贴以下配置文件,注意修改文件夹路径
services:
moontv-core:
image: ghcr.io/moontechlab/lunatv:latest
container_name: moontv-core
restart: on-failure
ports:
- '3000:3000'
environment:
- USERNAME=admin
- PASSWORD=admin_password
- NEXT_PUBLIC_STORAGE_TYPE=redis
- REDIS_URL=redis://moontv-redis:6379
networks:
- moontv-network
depends_on:
- moontv-redis
moontv-redis:
image: redis:alpine
container_name: moontv-redis
restart: unless-stopped
networks:
- moontv-network
# 请开启持久化,否则升级/重启后数据丢失
volumes:
- ./data:/data
networks:
moontv-network:
driver: bridge
注意:如需多设备同步播放记录和收藏,请将
NEXT_PUBLIC_STORAGE_TYPE设为redis并额外部署 Redis 容器,参考项目 README 中的 Redis 版本 Docker Compose 示例。
2.2 项目名称填写 moontv,存放路径由系统自动创建,点击立即部署,等待镜像拉取完成
如果镜像拉取失败,请参考其他绿联镜像加速教程。

2.3 在浏览器输入 NAS 地址加端口号(如 http://192.168.5.2:3000),出现以下页面即部署完成
部署后默认无密码,直接访问即可使用。

2.4 测试是否能播放,开始愉快的观影吧
部署完成后建议搜索一部影片试播,确认资源站点可用。