告别找片源!Docker一键跑起MoonTV,观影自由到手
告别找片源!Docker一键跑起MoonTV,观影自由到手
一款开源、跨平台、开箱即用的影视聚合播放器,支持多源资源搜索、在线播放、收藏与播放记录同步,可通过 Docker 快速部署,界面简洁无广告,覆盖电影、剧集、动漫、综艺等内容,适合搭建私人无广告观影平台。
功能特性:
多源聚合搜索:内置数十个免费资源站点,一次搜索立刻返回全源结果
丰富详情页:支持剧集列表、演员、年份、简介等完整信息展示
流畅在线播放
收藏 + 继续观看:LocalStorage 存储,后续扩展 DB 存储
PWA:离线缓存、安装到桌面/主屏,移动端原生体验
响应式布局:桌面侧边栏 + 移动底部导航,自适应各种屏幕尺寸
极简部署:一条 Docker 命令即可将完整服务跑起来,或免费部署到 Vercel
智能去广告:自动跳过视频中的切片广告(实验性)
项目地址:https://github.com/samqin123/MoonTV
image-20260227142629982安装部署
安装非常简单
1)Docker Compose配置文件(本地存储,快速部署)
创建本地数据存储路径:
mkdir /opt/moonvtv/data
Docker Compose配置:
services:
moontv-core:
image: ghcr.nju.edu.cn/moontechlab/lunatv:latest
container_name: moontv-core
restart: on-failure
ports:
- '3006:3000'
environment:
- USERNAME=admin
- PASSWORD=123456
- NEXT_PUBLIC_STORAGE_TYPE=kvrocks
- KVROCKS_URL=redis://moontv-kvrocks:6666
networks:
- moontv-network
depends_on:
- moontv-kvrocks
moontv-kvrocks:
image: apache/kvrocks
container_name: moontv-kvrocks
restart: unless-stopped
volumes:
- ./data:/var/lib/kvrocks
networks:
- moontv-network
networks:
moontv-network:
driver: bridge
volumes:
kvrocks-data:
参数说明:
PASSWORD(环境变量,可选):访问密码
/app/config.json(路径,可选):自定义配置
2)Docker命令安装
Docker下载镜像:
docker pull ghcr.nju.edu.cn/moontechlab/lunatv:latest
Docker启动容器:
docker run -d --name moontv -p 3006:3000 --env PASSWORD=123456 ghcr.nju.edu.cn/moontechlab/lunatv:latest
3)安装Redis版本
services:
moontv-core:
image: ghcr.nju.edu.cn/moontechlab/lunatv:latest
container_name: moontv
restart: unless-stopped
ports:
- '3000:3000'
environment:
- USERNAME=admin
- PASSWORD=123456
- 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
使用教程
1、访问登录
浏览器中输入 http://NAS的IP:3006 就能看到界面
提示输入密码 就输入刚才设置的123456
image-202602271457313602、进入登录界面
image-202602271447461083、配置影视源
点击右上角-管理面板
image-20260227145834240百度搜索
image-20260227145915444
image-202602271459447854、进阶玩法
可在部署时,映射/docker/moontv/config.json:/app/config.json
所有可自定义项集中在根目录的 config.json 中:
{
"cache_time": 7200,
"api_site": {
"dyttzy": {
"api": "http://caiji.dyttzyapi.com/api.php/provide/vod",
"name": "电影天堂资源",
"detail": "http://caiji.dyttzyapi.com"
}
// ...更多站点
},
"custom_category": [
{
"name": "华语",
"type": "movie",
"query": "华语"
}
]
}
参数说明:
cache_time:接口缓存时间(秒)。api_site:你可以增删或替换任何资源站,字段说明:key:唯一标识,保持小写字母/数字。api:资源站提供的vodJSON API 根地址。name:在人机界面中展示的名称。detail:(可选)部分无法通过 API 获取剧集详情的站点,需要提供网页详情根 URL,用于爬取。
custom_category:自定义分类配置,用于在导航中添加个性化的影视分类。以 type + query 作为唯一标识。支持以下字段:name:分类显示名称(可选,如不提供则使用 query 作为显示名)type:分类类型,支持movie(电影)或tv(电视剧)query:搜索关键词,用于在豆瓣 API 中搜索相关内容
custom_category 支持的自定义分类已知如下:
movie:热门、最新、经典、豆瓣高分、冷门佳片、华语、欧美、韩国、日本、动作、喜剧、爱情、科幻、悬疑、恐怖、治愈
tv:热门、美剧、英剧、韩剧、日剧、国产剧、港剧、日本动画、综艺、纪录片
也可输入如 "哈利波特" 效果等同于豆瓣搜索
修改后 无需重新构建,服务会在启动时读取一次
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

Cainlee
校验提示文案
Cainlee
校验提示文案