🎬 MoonTV 是一个开箱即用的、跨平台的影视聚合播放器。它基于 Next.js 14 + Tailwind CSS + TypeScript 构建,支持多资源搜索、在线播放、收藏同步、播放记录、云端存储,让你可以随时随地畅享海量免费影视内容。
LunaTV(原名 MoonTV)是一个非常棒的开源跨平台影视聚合播放器,支持多资源搜索、在线播放、云端存储等功能。
为了让新手也能轻松搞定,我们采用最简单、也是官方最推荐的 Docker Compose 方式进行部署。同时,我们将使用 Kvrocks 作为数据库(比普通的 Redis 更稳定,不容易丢失数据)。
以下是保姆级的详细部署教程。建议使用 Ubuntu 20.04 或 22.04 / Debian 11 或 12 (以及更高版本)的 VPS 服务器。这里博主用的 Debian 12 (配置:2C2G30M)来做演示。
PS:如果低于1C1G的服务器,自己看可能没问题,人多就噶了。之前放在阿里云的1C1G的香港机器上,三个人看,CPU直接100%,很容易挂掉。
第一步:连接服务器并安装基础环境
首先,通过 SSH 连接工具(如 Windows 自带的终端、Xshell、Termius 等)连接到你的 VPS 服务器。
1. 一键安装 Docker 和 Docker 插件 在终端中复制并运行以下命令(这是一个官方提供的自动安装脚本,全程自动跑完):
curl -fsSL https://get.docker.com | bash
2. 启动并设置 Docker 开机自启
systemctl start docker
systemctl enable docker
第二步:创建 LunaTV 部署配置文件
为了方便管理文件,我们给 LunaTV 单独建一个文件夹。
1. 创建并进入目录
mkdir -p /opt/lunatv
cd /opt/lunatv
2. 创建 docker-compose.yml 配置文件 运行以下命令,使用 nano 编辑器创建文件:
nano docker-compose.yml
3. 复制并粘贴配置代码 将下面的配置内容复制,然后在终端里单击鼠标右键(或使用 Shift + Insert)粘贴进去:
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=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:
- kvrocks-data:/var/lib/kvrocks
networks:
- moontv-network
networks:
moontv-network:
driver: bridge
volumes:
kvrocks-data:
📌 修改提示: 千万记得把 USERNAME 和 PASSWORD 换成你自己想设置的账号密码。

4. 保存并退出 在 nano 编辑器中:
- 按
Ctrl + O,然后按Enter键(确认保存)。 - 按
Ctrl + X退出编辑器。
第三步:拉取镜像并启动项目
在刚才的 /opt/lunatv 目录下,直接运行启动命令:
docker compose up -d
此时服务器会自动下载所需要的镜像文件,并自动后台运行。因为服务器在海外或网络原因,可能需要等待 1-3 分钟。看到显示 Started 或 Running 字样即代表成功。

第四步:访问你的 LunaTV
部署完成后,打开你的电脑或手机浏览器,在地址栏输入: http://你的VPS的IP地址:3000 (例如:http://192.168.1.100:3000)
进入页面后,使用你刚刚在配置文件里填写的账号和密码登录,就可以开始进入网站了。
⚠️ 新手常见坑点(必看): 如果网页打不开,99% 是因为你的 服务器防火墙 没有放行
3000端口。
- 云厂商控制台: 登录阿里云/腾讯云/搬瓦工等服务商的后台,找到“安全组”或“防火墙”设置,添加一条规则:允许 TCP 端口
3000访问。- 系统防火墙(如开启了 UFW): 可以在服务器里执行
ufw allow 3000来放行。
第五步:后台配置
1.进入后台之后,会有内容显示,但是点进去是没有内容可以播放的,是因为缺少了播放源,这里我们点击右上角,选择管理面板,然后点击配置文件。

输入Github上hafrey1大佬的源配置,省去自己找源的麻烦。
里面有不同的类型,请各位自行判断选择,然后输入,拉取源之后,保存。
其他配置文件,就可以根据喜好,自行配置就行。
写在最后
💡 进阶维护命令(以后会用到)
如果你以后想更新版本,或者重启服务,请先回到部署所在的目录:
cd /opt/lunatv
- 更新到最新版:
docker compose pull && docker compose up -d - 重启服务:
docker compose restart - 停止运行:
docker compose down
如果你希望用域名访问(比如 http://tv.yourdomain.com),建议在服务器上安装 Nginx Proxy Manager 或使用 宝塔面板,添加一个反向代理指向 127.0.0.1:3000 即可,同时还能方便地配置 SSL (https) 证书。
演示站:苍狗TV

PS:用了将近俩月,感觉还行,所以才水了一篇文章。
CangDog