KatelyaTV

项目概述 KatelyaTV 是一款基于 Next.js 14、TypeScript 和 Tailwind Tailwind CSS 开发的跨平台台影视聚合搜索影视播放器，具备即开即用、自托管等特点。该项目从「MoonTV」演进而来，为其二创/继承版本，持续维护与改进功能与体验。核心特点多源聚合：整合多个视频资源源，提供丰富的影视内容跨平台支持：兼容多种设备和平台播放记录同步：记录观看进度，支持断点续播收藏功能：可收藏喜爱的影视内容跳过片头片尾：智能识别并跳过片头片尾 PWA 支持：可作为渐进式Web应用安装使用 TVBox 兼容：支持与TVBox等电视盒子应用配合使用安装指南部署方案选择根据不同使用场景，可选择以下部署方案：使用场景推荐方案存储类型成人内容过滤多用户部署难度个人使用 Docker 单容器 localstorage ❌ ❌ ⭐ 家庭使用 Docker + Redis redis ✅ ✅ ⭐⭐ 免费部署 Vercel + Upstash upstash ✅ ✅ ⭐⭐⭐ 生产环境 Docker + Kvrocks kvrocks ✅ ✅ ⭐⭐ 全球加速 Cloudflare Pages d1 ✅ ✅ ⭐⭐⭐⭐ 注意：成人内容过滤功能需要数据库存储支持，不支持 localstorage 方式 1. Docker 单容器部署（个人使用推荐） docker pull ghcr.io/katelya77/katelyatv:latest docker run -d --name katelyatv -p 3000:3000 --env PASSWORD=your_password ghcr.io/katelya77/katelyatv:latest 2. Docker + Redis 部署（家庭使用推荐） # 1. 下载配置文件 curl -O https://raw.githubusercontent.com/katelya77/KatelyaTV/main/docker-compose.redis.yml curl -O https://raw.githubusercontent.com/katelya77/KatelyaTV/main/.env.redis.example # 2. 配置环境变量 cp .env.redis.example .env # 编辑 .env 文件设置必要参数 # 管理员账号（必填） USERNAME=admin PASSWORD=your_secure_password # 存储配置 NEXT_PUBLIC_STORAGE_TYPE=redis REDIS_URL=redis://katelyatv-redis:6379 # 功能开关 NEXT_PUBLIC_ENABLE_REGISTER=true # 3. 启动服务 docker compose -f docker-compose.redis.yml up -d 3. Cloudflare Pages + D1 部署（全球加速） Fork 项目到自己的 GitHub 账号创建 Pages 项目：登录 Cloudflare Dashboard 进入 Pages → Connect to Git → 选择刚 Fork 的仓库构建设置： Build command: pnpm install --frozen-lockfile && pnpm run pages:build Build output directory: .vercel/output/static 兼容性标志：nodejs_compat 配置环境变量： # 管理员账号 USERNAME=admin PASSWORD=your_password # 存储配置 NEXT_PUBLIC_STORAGE_TYPE=d1 # 功能开关 NEXT_PUBLIC_ENABLE_REGISTER=true 创建 D1 数据库： # 安装Wrangler CLI npm install -g wrangler wrangler auth login # 创建数据库 wrangler d1 create katelyatv-db # 在项目根目录下运行 wrangler d1 execute katelyatv-db --file=./scripts/d1-init.sql 配置数据库绑定：在 wrangler.toml 中添加数据库 ID 4. Vercel 部署 Fork 本仓库到自己的 GitHub 账号在 Vercel 中导入项目设置环境变量 PASSWORD（必填）构建命令：pnpm run build 本地开发环境搭建如果您想参与开发或在本地测试： # 克隆仓库 git clone https://github.com/katelya77/KatelyaTV.git cd KatelyaTV # 安装依赖 pnpm install # 启动开发服务器 pnpm dev # 运行测试 pnpm test # 构建生产版本 pnpm build # 代码格式化 pnpm lint --fix pnpm format TVBox 配置使用 KatelyaTV 支持与 TVBox 等电视盒子应用配合使用：获取配置地址： JSON 格式：https://你的域名/api/tvbox?format=json TXT 格式：https://你的域名/api/tvbox?format=txt XML 格式：https://你的域名/api/tvbox?format=xml 配置导入步骤：打开 TVBox 应用进入「配置」或「设置」页面选择「导入配置」或「添加配置」输入上述配置地址等待导入完成升级更新 Docker 更新 # 停止并更新服务 docker compose pull docker compose up -d # 查看运行状态 docker compose ps # 查看更新日志 docker compose logs -f katelyatv Git 部署更新 # 备份当前配置 cp config.json config.json.backup # 拉取最新代码 git pull origin main # 安装新依赖 pnpm install # 重新构建 pnpm run build # 恢复配置文件 cp config.json.backup config.json # 重启服务 pm2 restart katelyatv 相关资源 GitHub 仓库 Docker Hub 官方演示站点 (密码: demo123) 问题反馈讨论交流使用文档