MoonTV(免费影视聚合播放器)简介
MoonTV 是一款免费影视聚合播放器,能够为我们提供便捷的免费影视观看体验。该工具基于 Next.js 14、Tailwind CSS 和 TypeScript 构建,支持多资源影视资源搜索、在线播放、收藏同步、播放记录以及本地和云端存储,让大家可以随时随地畅享丰富的免费影视内容。

功能特点
- 多源聚合搜索:内置数十个免费资源站点,用户可一次搜索即可返回全源结果,极大地提升了查找效率。
- 丰富的详情页:支持剧集列表、演员信息、年份和简介等完整信息展示,让用户更全面地了解影视作品。
- 流畅的在线播放:集成 HLS.js 和 VidStack,确保用户在观看时获得流畅的播放体验。
- 收藏与继续观看:利用 LocalStorage 存储用户的观看记录,后续可扩展至 DB 存储。
- 响应式布局:无论是在桌面还是移动端,都能自适应各种屏幕尺寸,提供流畅的用户体验。
- 极简部署:用户只需一条 Docker 命令,即可轻松部署完整服务,支持 Vercel 和 Cloudflare 的免费部署。
- 具备智能去广告功能,能够自动跳过视频中的切片广告。
MoonTV(免费影视聚合播放器)官网及教程
Docker 部署
适用于自建服务器 / NAS / 群晖等场景。
# 拉取预构建镜像
docker pull ghcr.io/senshinya/moontv:latest
# 运行容器
# -d: 后台运行 -p: 映射端口 3000 -> 3000
docker run -d --name moontv -p 3000:3000 ghcr.io/senshinya/moontv:latest
访问 http://服务器 IP:3000 即可。
Docker Compose 最佳实践
若你使用 docker compose 部署,以下是一些 compose 示例
local storage 版本
services:
moontv:
image: ghcr.io/senshinya/moontv:latest
container_name: moontv
restart: unless-stopped
ports:
- '3000:3000'
environment:
- PASSWORD=your_password
# 如需自定义配置,可挂载文件
# volumes:
# - ./config.json:/app/config.json:ro
Redis 版本(推荐,多账户数据隔离,跨设备同步)
services:
moontv-core:
image: ghcr.io/senshinya/moontv:latest
container_name: moontv
restart: unless-stopped
ports:
- '3000:3000'
environment:
- NEXT_PUBLIC_STORAGE_TYPE=redis
- REDIS_URL=redis://moontv-redis:6379
- NEXT_PUBLIC_ENABLE_REGISTER=true # 首次部署请设置该变量,注册初始账户后可关闭
networks:
- moontv-network
depends_on:
- moontv-redis
# 如需自定义配置,可挂载文件
# volumes:
# - ./config.json:/app/config.json:ro
moontv-redis:
image: redis
container_name: moontv-redis
restart: unless-stopped
networks:
- moontv-network
# 如需持久化
# volumes:
# - ./data:/data
networks:
moontv-network:
driver: bridge