
一、什么是MoonTV
🎬 MoonTV
是一个开箱即用的、跨平台的影视聚合播放器。它基于 Next.js 14 + Tailwind CSS + TypeScript 构建,支持多资源搜索、在线播放、收藏同步、播放记录、本地/云端存储,让你可以随时随地畅享海量免费影视内容。
✨ 功能特性
🔍 多源聚合搜索:内置数十个免费资源站点,一次搜索立刻返回全源结果。
📄 丰富详情页:支持剧集列表、演员、年份、简介等完整信息展示。
▶️ 流畅在线播放:集成 HLS.js & VidStack。
❤️ 收藏 + 继续观看:Docker 部署支持 Redis 存储,多端同步进度。
📱 PWA:离线缓存、安装到桌面/主屏,移动端原生体验。
🌗 响应式布局:桌面侧边栏 + 移动底部导航,自适应各种屏幕尺寸。
🚀 极简部署:一条 Docker 命令即可将完整服务跑起来,或免费部署到 Vercel。
👿 智能去广告:自动跳过视频中的切片广告(实验性)

项目地址:senshinya/MoonTV
二、安装教程,推荐使用docker-compose部署
2.1 在绿联nas中点击docker,点击项目,点击创建,复制以下配置文件,注意修改文件夹路径
services:
moontv:
image: ghcr.io/senshinya/moontv:latest # 使用来自 GitHub 容器注册表的 MoonTV 镜像(latest 最新版)
container_name: moontv # 容器名称设为 moontv
restart: always # 如果容器停止,则始终自动重启
ports:
- '3000:3000' # 映射主机的 3000 端口到容器内的 3000 端口,端口冲突请修改
environment:
- PASSWORD= # 实例访问密码,留空则不启用密码保护(默认空)
- SITE_NAME=MoonTV # 站点名称(默认:MoonTV)
- NEXT_PUBLIC_STORAGE_TYPE=localstorage # 播放记录/收藏的存储方式(默认:localstorage,可选:localstorage、database【暂不支持】)
- NEXT_PUBLIC_ENABLE_BLOCKAD=true # 是否启用智能去广告功能(实验性)(默认:false,可选:true / false)
- NEXT_PUBLIC_SEARCH_MAX_PAGE=10 # 搜索接口最大可拉取的页数(默认:5,范围:1-50)
- NEXT_PUBLIC_AGGREGATE_SEARCH_RESULT=true # 搜索结果是否按标题和年份聚合(默认:true,可选:true / false)
# 如需自定义配置,可挂载文件
#volumes:
# - /volume3/docker/moontv/config.json:/app/config.json:ro2.2 项目名称填写moontv,存放路径自动创建moontv文件夹,点击立即部署,等待拉取镜像完成
如果镜像拉取失败请查看其他绿联镜像教程

2.3 在浏览器输入nas地址加端口号(http://192.168.5.2:3000),默认无密码,进入如下页面即部署完成
