AI摘要

今天又发现了一个基于 MoonTV 二创延续版KatelyaTV。在原作基础上提供更易部署、更友好、更稳定的体验。并且增加了 TVBox 配置接口,可以把视频源导入到各种电视盒子应用中使用。本片主要介绍 KatelyaTV 的部署和使用,TVBox 的功能可以参考作者的TVBox 配置接口使用指南,或等我后面出的教程文章。

🤔 KatelyaTV 是什么?

🎬 KatelyaTV 是一个开箱即用的、跨平台的影视聚合播放器。它基于 Next.js 14 + Tailwind CSS + TypeScript 构建,支持多资源搜索、在线播放、收藏同步、播放记录、本地/云端存储,让你可以随时随地畅享海量免费影视内容。MoonTV 二创延续版 · 持续维护与增强。


✨ 特性

  • 🔍 聚合搜索:整合多个影视资源站,一键搜索全网内容
  • 📺 高清播放:基于 ArtPlayer 的强大播放器,支持多种格式和画质
  • ⏭️ 智能跳过:自动检测并跳过片头片尾,支持手动设置跳过时间段
  • 🎯 断点续播:自动记录播放进度,跨设备同步观看位置
  • 📱 响应式设计:完美适配手机、平板、电脑各种屏幕尺寸
  • 收藏功能:收藏喜欢的影视作品,支持跨设备同步
  • 📖 播放历史:自动记录观看历史,快速找回看过的内容
  • 👥 多用户支持:独立的用户系统,每个用户独享个人数据
  • 🔄 数据同步:支持多种存储后端(LocalStorage、Redis、D1、Upstash)
  • 🐳 Docker 一键部署:提供完整的 Docker 镜像,开箱即用
  • ☁️ 多平台支持:兼容 Vercel、Cloudflare Pages、传统服务器
  • 🔧 灵活配置:支持自定义资源站、代理设置、主题配置
  • 📱 PWA 支持:可安装为桌面/手机应用,支持离线缓存
  • 📺 TVBox 兼容:支持 TVBox 配置接口,可导入到各种电视盒子应用
  • 🌓 深色模式:支持明暗主题切换,护眼舒适
  • 性能优化:智能缓存、懒加载、播放源优选算法
  • 🔐 隐私保护:本地部署,数据完全掌控
  • 🌍 国际化支持:多语言支持(规划中)

🐳部署指南

💡 推荐方案

  • 🆕 个人用户Docker 单容器(最简单)
  • 🏠 家庭/团队Docker + Redis(功能完整)

    • 🏢 生产环境Docker + Kvrocks(极高可靠性,零数据丢失风险)

📋 部署方式对比

方式难度成本多用户数据可靠性推荐场景
🐳 Docker 单容器需服务器⭐⭐个人使用,最简单
🐳 Docker + Redis⭐⭐需服务器⭐⭐⭐家庭/团队,功能完整
🏪 Docker + Kvrocks⭐⭐需服务器⭐⭐⭐⭐⭐生产环境,高可靠性
☁️ Vercel免费临时体验,无服务器
🌐 Cloudflare⭐⭐⭐免费⭐⭐⭐技术爱好者

准备配置文件并上传到飞牛指定文件目录

配置文件标准版下载地址: 配置文件标准版
配置文件Plus下载地址: 配置文件Plus版本【94片源】

  1. 在飞牛新建目录有用存放配置文件
  2. 下载上面的配置文件(标准版/Plus二选一)后上传到飞牛新建的目录中。演示使用的是 Plus 版本。

🎯 方案一:Docker 单容器(推荐新手)

# 一键启动(请把 your_password 改成你的密码)
docker run -d \
  --name katelyatv \
  -p 3000:3000 \
  --user 0:0
  --env PASSWORD=your_password \
  - ./configplus.json:/app/config.json:ro \
  --restart unless-stopped \
  ghcr.io/katelya77/katelyatv:latest
  • PASSWORD=your_strong_passwordyour_strong_password 改成你的强密码。
  • - ./configplus.json:/app/config.json:roconfigplus 使用的是标准版配置文件需要改为 config,Plus 配置上无需修改。
  • --user 0:0:我搭建的时候不加这个参数会失败。如果你不用这个参数也可以正常使用,就无需添加。

🎯 方案二:Docker + Redis(推荐进阶)

docker-compose.yml 文件

services:
  # KatelyaTV 主应用
  katelyatv:
    image: ghcr.io/katelya77/katelyatv:latest
    container_name: katelyatv
    ports:
      - "3000:3000"
    environment:
      # 管理员账号(请修改)
      - USERNAME=admin
      - PASSWORD=your_strong_password
      # 启用 Redis 存储
      - NEXT_PUBLIC_STORAGE_TYPE=redis
      - REDIS_URL=redis://katelyatv-redis:6379
      # 允许用户注册(可选)
      - NEXT_PUBLIC_ENABLE_REGISTER=true
    depends_on:
      katelyatv-redis:
        condition: service_healthy
    restart: unless-stopped
    # 可选:挂载自定义配置
    user: 0:0
    volumes:
      - ./configplus.json:/app/config.json:ro

  # Redis 数据库
  katelyatv-redis:
    image: redis:7-alpine
    container_name: katelyatv-redis
    command: redis-server --appendonly yes --maxmemory 256mb --maxmemory-policy allkeys-lru
    volumes:
      - katelyatv-redis-data:/data
    healthcheck:
      test: ["CMD", "redis-cli", "ping"]
      interval: 10s
      timeout: 3s
      retries: 3
    restart: unless-stopped

volumes:
  katelyatv-redis-data:
  • PASSWORD=your_strong_passwordyour_strong_password 改成你的强密码。
  • USERNAME=adminadmin 可以改成你喜欢的管理员用户名。
  • - ./configplus.json:/app/config.json:roconfigplus 使用的是标准版配置文件需要改为 config,Plus 配置无需修改。
  • user: 0:0:我搭建的时候不加这个参数会失败。如果你不用这个参数也可以正常使用,就无需添加。

  1. 在飞牛主页面找到 Docker 打开后,切换菜单 Compose -> 新增项目

  1. 创建项目页面根据实际情况定义 项目名称、选择 路径,并把上面 docker-compose.yml 文件内容复制填入 来源 文本框内容。按需修改检查无误后点击 确定 按钮进行部署。

  1. 返回 Docker管理页面,在 容器 菜单,就可以看到运行情况,点击右侧🔗可以直接打开 KatelyaTV

📖使用

  1. 访问 http://NASIP:3000
  2. 使用你设置的用户名和密码登录进入管理后台
  3. 点击顶部Tab可以切换不同类型的媒体
  4. 在管理后台可以配置资源站、管理用户等


更多部署方式或进阶玩法请参考作者的 Github仓库部署说明


⚠️ 安全与隐私提醒

强烈建议设置密码保护

为了您的安全和避免潜在的法律风险,我们强烈建议在部署时设置密码保护:

  • 避免公开访问:不设置密码的实例任何人都可以访问,可能被恶意利用
  • 防范版权风险:公开的视频搜索服务可能面临版权方的投诉举报
  • 保护个人隐私:设置密码可以限制访问范围,保护您的使用记录

部署建议

  1. 设置环境变量 PASSWORD:为您的实例设置一个强密码
  2. 仅供个人使用:请勿将您的实例链接公开分享或传播
  3. 遵守当地法律:请确保您的使用行为符合当地法律法规

重要声明

  • 本项目仅供学习和个人使用
  • 请勿将部署的实例用于商业用途或公开服务
  • 如因公开分享导致的任何法律问题,用户需自行承担责任
  • 项目开发者不对用户的使用行为承担任何法律责任