免费影视媒体库MoonTV部署教程 全网电影、剧集、综艺高清资源免费观看

免费影视媒体库MoonTV部署教程 全网电影、剧集、综艺高清资源免费观看

MoonTV 是一个开箱即用的跨平台影视聚合播放器。它基于 Next.js 14 + Tailwind CSS + TypeScript 构建,集成了多源搜索、在线播放、收藏同步、播放记录等强大功能,让你随时随地畅享海量免费影视内容。

✨ 核心功能亮点

  • 多源聚合搜索:内置数十个免费资源站点,一次搜索即可返回全网结果。
  • 流畅在线播放:集成 HLS.js 和 ArtPlayer,提供流畅稳定的播放体验。
  • 跨设备同步:支持 Redis/D1 存储,收藏和观看进度多端同步。
  • PWA 支持:可离线缓存,安装到桌面或主屏,获得接近原生应用的移动端体验。
  • 自适应布局:完美支持桌面、平板和手机,界面自动适应各种屏幕尺寸。
  • 极简部署:只需一条 Docker 命令或简单的 Vercel/Cloudflare 配置,即可快速上线。
  • 智能去广告:实验性功能,可自动跳过视频中的贴片广告。
  • 演示站点https://dy.deep123.top/ (passsword:123456)

🚀 部署方式选择

MoonTV 支持多种部署方式,你可以根据自己的需求选择最适合的一种:

  • Vercel 部署:零运维成本,免费额度足够个人使用,强烈推荐
  • Cloudflare 部署:同样提供免费服务,支持 D1 数据库,可实现更完善的云端同步。
  • Docker 部署:适用于自建服务器、NAS 或群晖,完全掌握在自己手中。

1. Vercel 部署(最简单)

这是最推荐的部署方式,简单快捷,无需任何运维。

  1. Fork 仓库:首先将 MoonTV 的 GitHub 仓库 (https://github.com/MoonTechLab/LunaTV) Fork 到你自己的 GitHub 账户。
  2. 导入项目:登录 Vercel,点击 Add New → Project,选择你刚刚 Fork 的仓库。
  3. 配置环境变量:在部署设置中,添加一个名为 PASSWORD 的环境变量,并设置你的登录密码。这能保障你的实例安全,强烈建议设置。
  4. 完成部署:保持默认设置,点击 Deploy。部署完成后,你将获得一个可直接访问的域名。

提示: 如果需要自定义配置(例如更改数据源),可以直接修改你 Fork 仓库中的 config.json 文件,每次修改并 Pushmain 分支都会自动触发重新部署。

2. Cloudflare 部署

Cloudflare Pages 同样提供了免费且强大的部署能力,配合 D1 数据库可实现云端同步。

普通部署(使用 localstorage 本地存储)

  1. Fork 仓库:将 MoonTV 的 GitHub 仓库 Fork 到你的账户。
  2. 创建项目:登录 Cloudflare,进入 Workers & Pages,选择 Pages,然后点击 创建项目
  3. 连接仓库:选择 连接到 Git,并授权访问你 Fork 的 MoonTV 仓库。
  4. 配置构建
    • 构建命令pnpm install --frozen-lockfile && pnpm run pages:build
    • 构建输出目录.vercel/output/static
    • 框架预设:选择
  5. 部署和配置:点击 部署。首次部署成功后,进入项目 设置,将 兼容性标志 设置为 nodejs_compat。然后在 变量和机密 下添加 PASSWORD 密钥,并重新部署。

D1 数据库部署(支持云端同步)

如果想使用云端同步功能,需要额外配置 Cloudflare 的 D1 数据库。

  1. 创建 D1 数据库:进入 存储和数据库 → D1 SQL 数据库,创建一个新数据库(名称随意)。
  2. 初始化数据库:进入新创建的数据库,点击 Explore Data,粘贴 MoonTV 官方仓库提供的 D1 初始化 SQL 脚本并运行。
  3. 绑定数据库:返回你的 Pages 项目设置,进入 绑定,添加 D1 数据库绑定,选择你刚刚创建的数据库,变量名称填 DB
  4. 配置环境变量:在 变量和机密 下,新增以下变量:
    • NEXT_PUBLIC_STORAGE_TYPE:值设为 d1
    • USERNAME:站长账号
    • PASSWORD:站长密码
  5. 重新部署:完成上述配置后,重新部署项目。

3. Docker 部署

这种方式适合有自己的服务器或 NAS 的用户,提供最大的自由度。

  1. 拉取镜像:在你的服务器上执行以下命令,拉取 MoonTV 的预构建 Docker 镜像。

    1
    docker pull ghcr.io/senshinya/moontv:latest
  2. 运行容器:执行以下命令运行 MoonTV 容器,并将本地端口映射到容器端口。

    1
    2
    3
    4
    5
    docker run -d \
    --name moontv \
    -p 3000:3000 \
    --env PASSWORD=123456 \
    ghcr.io/senshinya/moontv:latest

注意:

  • -d:表示后台运行。
  • -p 3000:3000:将服务器的 3000 端口映射到容器的 3000 端口。你可以根据需要修改左侧的端口号。
  • --env PASSWORD=123456:设置登录密码,请务必修改为一个安全的密码

部署完成后,通过 http://你的服务器IP:3000 即可访问。记得在服务器防火墙或控制台放行 3000 端口。