feat: 更新Kvrocks部署文档,添加管理员账号和用户注册配置说明
This commit is contained in:
@@ -19,6 +19,13 @@ KVROCKS_DATABASE=0
|
||||
NEXTAUTH_SECRET=your_nextauth_secret_here
|
||||
NEXTAUTH_URL=http://localhost:3000
|
||||
|
||||
# 管理员账号配置(必填)
|
||||
USERNAME=admin
|
||||
PASSWORD=your_admin_password
|
||||
|
||||
# 用户注册配置
|
||||
NEXT_PUBLIC_ENABLE_REGISTER=true
|
||||
|
||||
# 站点配置
|
||||
NEXT_PUBLIC_SITE_NAME=KatelyaTV
|
||||
NEXT_PUBLIC_SITE_DESCRIPTION=高性能影视播放平台
|
||||
|
||||
@@ -148,6 +148,25 @@ docker compose -f docker-compose.kvrocks.yml up -d
|
||||
# docker compose -f docker-compose.kvrocks.auth.yml up -d
|
||||
```
|
||||
|
||||
**重要环境变量配置**:
|
||||
|
||||
```bash
|
||||
# 存储类型
|
||||
NEXT_PUBLIC_STORAGE_TYPE=kvrocks
|
||||
|
||||
# 管理员账号(必填)
|
||||
USERNAME=admin
|
||||
PASSWORD=your_admin_password
|
||||
|
||||
# Kvrocks配置
|
||||
KVROCKS_URL=redis://kvrocks:6666
|
||||
# 密码配置(可选)
|
||||
# KVROCKS_PASSWORD=your_kvrocks_password
|
||||
|
||||
# 开启用户注册
|
||||
NEXT_PUBLIC_ENABLE_REGISTER=true
|
||||
```
|
||||
|
||||
**Kvrocks 优势**:
|
||||
|
||||
- 🛡️ **极高可靠性**:基于 RocksDB,数据持久化到磁盘
|
||||
|
||||
-371
@@ -1,371 +0,0 @@
|
||||
<div align="center">
|
||||
<img src="public/logo.png" alt="KatelyaTV Logo" width="128" />
|
||||
|
||||
<h1>KatelyaTV</h1>
|
||||
<p><strong>跨平台 · 聚合搜索 · 即开即用 · 自托管影视聚合播放器</strong></p>
|
||||
<p>基于 <code>Next.js 14</code> · <code>TypeScript</code> · <code>Tailwind CSS</code> · 多源聚合 / 播放记录 / 收藏同步 / 跳过片头片尾 / PWA</p>
|
||||
|
||||
<p>
|
||||
<a href="#-快速开始">🚀 快速开始</a> ·
|
||||
<a href="#-功能特性">✨ 功能特性</a> ·
|
||||
<a href="#-部署方案">📋 部署方案</a> ·
|
||||
<a href="#-配置说明">⚙️ 配置说明</a>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
---
|
||||
|
||||
## 📰 项目声明
|
||||
|
||||
本项目自「MoonTV」演进而来,为其二创/继承版本,持续维护与改进功能与体验。保留并致谢原作者与社区贡献者。
|
||||
|
||||
> **🔔 重要变更**:应用户社区建议,为确保项目长期稳定运行和合规性,内置视频源已移除。现需要用户自行配置资源站以使用完整功能。我们提供了经过测试的推荐配置文件,让您快速上手使用。
|
||||
|
||||
---
|
||||
|
||||
## ✨ 功能特性
|
||||
|
||||
### 🎬 核心功能
|
||||
|
||||
- **🔍 聚合搜索**:整合多个影视资源站,一键搜索全网内容
|
||||
- **📺 高清播放**:基于 ArtPlayer 的强大播放器,支持多种格式
|
||||
- **⏭️ 智能跳过**:自动检测并跳过片头片尾,手动设置跳过时间段
|
||||
- **🎯 断点续播**:自动记录播放进度,跨设备同步观看位置
|
||||
- **📱 响应式设计**:完美适配手机、平板、电脑各种屏幕
|
||||
|
||||
### 💾 数据管理
|
||||
|
||||
- **⭐ 收藏功能**:收藏喜欢的影视作品,支持跨设备同步
|
||||
- **📖 播放历史**:自动记录观看历史,快速找回看过的内容
|
||||
- **👥 多用户支持**:独立的用户系统,每个用户独享个人数据
|
||||
- **🔄 数据同步**:支持多种存储后端(LocalStorage、Redis、D1、Upstash)
|
||||
|
||||
### 🚀 部署特性
|
||||
|
||||
- **🐳 Docker 一键部署**:提供完整的 Docker 镜像,开箱即用
|
||||
- **☁️ 多平台支持**:Vercel、Docker、Cloudflare Pages 全兼容
|
||||
- **🔧 灵活配置**:支持自定义资源站、代理设置、主题配置
|
||||
- **📱 PWA 支持**:可安装为桌面/手机应用
|
||||
- **📺 TVBox 兼容**:支持 TVBox 配置接口
|
||||
|
||||
---
|
||||
|
||||
## 🚀 快速开始
|
||||
|
||||
### 推荐方案选择
|
||||
|
||||
| 用户类型 | 推荐方案 | 特点 |
|
||||
| ----------- | ---------------- | -------------------- |
|
||||
| 🆕 新手用户 | Docker 单容器 | 最简单,5 分钟部署 |
|
||||
| 👥 多人使用 | Vercel + Upstash | 免费,支持多用户 |
|
||||
| 🏠 自托管 | Docker + Redis | 功能完整,数据可控 |
|
||||
| 🏢 生产环境 | Docker + Kvrocks | 高可靠性,零丢失风险 |
|
||||
|
||||
---
|
||||
|
||||
## 📋 部署方案
|
||||
|
||||
### 方案一:Docker 单容器(推荐新手)
|
||||
|
||||
**适合场景**:个人使用,最简单的部署方式
|
||||
|
||||
```bash
|
||||
# 一键启动
|
||||
docker run -d \
|
||||
--name katelyatv \
|
||||
-p 3000:3000 \
|
||||
--env PASSWORD=your_password \
|
||||
--restart unless-stopped \
|
||||
ghcr.io/katelya77/katelyatv:latest
|
||||
|
||||
# 访问 http://localhost:3000
|
||||
```
|
||||
|
||||
**自定义配置文件(可选)**:
|
||||
|
||||
```bash
|
||||
# 挂载配置文件
|
||||
docker run -d \
|
||||
--name katelyatv \
|
||||
-p 3000:3000 \
|
||||
--env PASSWORD=your_password \
|
||||
-v ./config.json:/app/config.json:ro \
|
||||
--restart unless-stopped \
|
||||
ghcr.io/katelya77/katelyatv:latest
|
||||
```
|
||||
|
||||
### 方案二:Docker + Redis(多用户推荐)
|
||||
|
||||
**适合场景**:家庭/团队使用,支持多用户和数据同步
|
||||
|
||||
```bash
|
||||
# 下载配置文件
|
||||
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
|
||||
cp .env.redis.example .env
|
||||
|
||||
# 编辑环境变量
|
||||
nano .env
|
||||
|
||||
# 启动服务
|
||||
docker compose -f docker-compose.redis.yml up -d
|
||||
```
|
||||
|
||||
**重要环境变量配置**:
|
||||
|
||||
```bash
|
||||
# 存储类型
|
||||
NEXT_PUBLIC_STORAGE_TYPE=redis
|
||||
|
||||
# 管理员账号
|
||||
USERNAME=admin
|
||||
PASSWORD=your_admin_password
|
||||
|
||||
# Redis配置
|
||||
REDIS_URL=redis://katelyatv-redis:6379
|
||||
|
||||
# 开启用户注册
|
||||
NEXT_PUBLIC_ENABLE_REGISTER=true
|
||||
```
|
||||
|
||||
### 方案三:Docker + Kvrocks(高可靠性)
|
||||
|
||||
**适合场景**:生产环境,需要极高的数据可靠性
|
||||
|
||||
```bash
|
||||
# 下载配置文件
|
||||
curl -O https://raw.githubusercontent.com/katelya77/KatelyaTV/main/docker-compose.kvrocks.yml
|
||||
curl -O https://raw.githubusercontent.com/katelya77/KatelyaTV/main/.env.kvrocks.example
|
||||
cp .env.kvrocks.example .env
|
||||
|
||||
# 编辑环境变量
|
||||
nano .env
|
||||
|
||||
# 启动服务(无密码版本)
|
||||
docker compose -f docker-compose.kvrocks.yml up -d
|
||||
|
||||
# 如需密码认证版本,使用:
|
||||
# docker compose -f docker-compose.kvrocks.auth.yml up -d
|
||||
```
|
||||
|
||||
**Kvrocks 优势**:
|
||||
|
||||
- 🛡️ **极高可靠性**:基于 RocksDB,数据持久化到磁盘
|
||||
- ⚡ **性能优异**:完全兼容 Redis 协议,性能更佳
|
||||
- 💾 **节省内存**:数据存储在磁盘,内存使用量大幅降低
|
||||
|
||||
> 详细部署指南请查看:[Kvrocks 部署文档](docs/KVROCKS_DEPLOYMENT.md)
|
||||
|
||||
### 方案四:Vercel + Upstash(免费推荐)
|
||||
|
||||
**适合场景**:无服务器,免费部署,支持多用户
|
||||
|
||||
1. **Fork 仓库**:Fork [KatelyaTV](https://github.com/katelya77/KatelyaTV) 到你的 GitHub
|
||||
2. **部署到 Vercel**:
|
||||
|
||||
- 登录 [Vercel](https://vercel.com/),导入你的仓库
|
||||
- 添加环境变量:`PASSWORD=your_password`
|
||||
- 点击 Deploy
|
||||
|
||||
3. **配置多用户(可选)**:
|
||||
```bash
|
||||
# 创建 Upstash Redis 数据库
|
||||
# 在 Vercel 中添加环境变量:
|
||||
NEXT_PUBLIC_STORAGE_TYPE=upstash
|
||||
UPSTASH_URL=https://xxx.upstash.io
|
||||
UPSTASH_TOKEN=your_token
|
||||
NEXT_PUBLIC_ENABLE_REGISTER=true
|
||||
USERNAME=admin
|
||||
PASSWORD=admin_password
|
||||
```
|
||||
|
||||
### 方案五:Cloudflare + D1(技术爱好者)
|
||||
|
||||
**适合场景**:全球 CDN 加速,免费但配置稍复杂
|
||||
|
||||
```bash
|
||||
# 下载配置文件
|
||||
curl -O https://raw.githubusercontent.com/katelya77/KatelyaTV/main/wrangler.toml
|
||||
curl -O https://raw.githubusercontent.com/katelya77/KatelyaTV/main/.env.cloudflare.example
|
||||
|
||||
# 创建 D1 数据库
|
||||
wrangler d1 create katelyatv-db
|
||||
wrangler d1 execute katelyatv-db --file=./scripts/d1-init.sql
|
||||
|
||||
# 部署
|
||||
wrangler pages deploy
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ⚙️ 配置说明
|
||||
|
||||
### 🔧 环境变量
|
||||
|
||||
| 变量名 | 说明 | 默认值 |
|
||||
| ----------------------------- | ---------------- | ------------ |
|
||||
| `PASSWORD` | 访问密码(必填) | 无 |
|
||||
| `USERNAME` | 管理员用户名 | 无 |
|
||||
| `SITE_NAME` | 站点名称 | KatelyaTV |
|
||||
| `NEXT_PUBLIC_STORAGE_TYPE` | 存储类型 | localstorage |
|
||||
| `REDIS_URL` | Redis 连接地址 | 无 |
|
||||
| `NEXT_PUBLIC_ENABLE_REGISTER` | 开启用户注册 | false |
|
||||
|
||||
### 📁 视频源配置
|
||||
|
||||
> **重要**:为保障项目合规性,需要配置视频源才能正常使用。
|
||||
|
||||
#### 方法一:使用推荐配置(推荐)
|
||||
|
||||
1. 下载配置文件:
|
||||
|
||||
- [基础版 config.json](https://www.mediafire.com/file/xl3yo7la2ci378w/config.json/file)
|
||||
- [Plus 版(94 个片源)](https://www.mediafire.com/file/fbpk1mlupxp3u3v/configplus.json/file)
|
||||
|
||||
2. 配置方式:
|
||||
- **Docker**:挂载配置文件 `-v ./config.json:/app/config.json:ro`
|
||||
- **Vercel**:替换仓库中的 `config.json` 文件内容
|
||||
- **管理员界面**:登录后台 `/admin` 导入配置
|
||||
|
||||
#### 方法二:手动配置
|
||||
|
||||
编辑 `config.json` 文件:
|
||||
|
||||
```json
|
||||
{
|
||||
"cache_time": 7200,
|
||||
"api_site": {
|
||||
"example": {
|
||||
"api": "https://example.com/api.php/provide/vod",
|
||||
"name": "示例资源站",
|
||||
"detail": "https://example.com"
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📱 高级功能
|
||||
|
||||
### TVBox 兼容
|
||||
|
||||
支持 TVBox 配置接口,可以将视频源导入到各种电视盒子应用:
|
||||
|
||||
- **配置地址**:`https://your-domain.com/api/tvbox?format=json`
|
||||
- **详细说明**:查看 [TVBox 配置指南](docs/TVBOX.md)
|
||||
|
||||
### 跳过片头片尾
|
||||
|
||||
智能跳过片头片尾功能:
|
||||
|
||||
- 🎯 自动检测已设置的跳过片段
|
||||
- ⚙️ 手动设置跳过时间段(精确到秒)
|
||||
- 🔄 支持多设备同步(需配置 Redis/D1/Upstash)
|
||||
|
||||
### AndroidTV 支持
|
||||
|
||||
配合 [OrionTV](https://github.com/zimplexing/OrionTV) 在 Android TV 上使用:
|
||||
|
||||
1. 在 OrionTV 中填入 KatelyaTV 部署地址
|
||||
2. 输入设置的 PASSWORD
|
||||
3. 即可在电视上观看
|
||||
|
||||
---
|
||||
|
||||
## 🛠️ 管理与维护
|
||||
|
||||
### 升级更新
|
||||
|
||||
```bash
|
||||
# Docker 升级
|
||||
docker compose pull && docker compose up -d
|
||||
|
||||
# 查看服务状态
|
||||
docker compose ps
|
||||
|
||||
# 查看日志
|
||||
docker compose logs -f
|
||||
```
|
||||
|
||||
### 数据备份
|
||||
|
||||
```bash
|
||||
# Redis 数据备份
|
||||
docker compose exec redis redis-cli BGSAVE
|
||||
|
||||
# Kvrocks 数据备份
|
||||
docker run --rm \
|
||||
-v katelyatv_kvrocks-data:/data \
|
||||
-v $(pwd):/backup \
|
||||
alpine tar czf /backup/kvrocks-backup.tar.gz /data
|
||||
```
|
||||
|
||||
### 常见问题
|
||||
|
||||
| 问题 | 解决方案 |
|
||||
| ---------------- | ------------------------------------------- |
|
||||
| 无法访问 | 检查端口 3000 是否开放 |
|
||||
| 密码错误 | 检查 PASSWORD 环境变量 |
|
||||
| Redis 连接失败 | 检查 Redis 容器状态和网络 |
|
||||
| Kvrocks 认证错误 | 查看 [详细文档](docs/KVROCKS_DEPLOYMENT.md) |
|
||||
|
||||
---
|
||||
|
||||
## 🔒 安全提醒
|
||||
|
||||
### 强烈建议
|
||||
|
||||
- **设置密码**:避免公开访问,防范法律风险
|
||||
- **个人使用**:请勿公开分享实例链接
|
||||
- **遵守法律**:确保使用行为符合当地法规
|
||||
|
||||
### 免责声明
|
||||
|
||||
- 本项目仅供学习和个人使用
|
||||
- 请勿用于商业用途或公开服务
|
||||
- 用户需对使用行为承担法律责任
|
||||
|
||||
---
|
||||
|
||||
## 🤝 贡献与支持
|
||||
|
||||
### 技术栈
|
||||
|
||||
- **前端**:Next.js 14, TypeScript, Tailwind CSS
|
||||
- **播放器**:ArtPlayer, HLS.js
|
||||
- **存储**:Redis, Kvrocks, Cloudflare D1, Upstash
|
||||
- **部署**:Docker, Vercel, Cloudflare Pages
|
||||
|
||||
### Star History
|
||||
|
||||
[](https://star-history.com/#katelya77/KatelyaTV&Date)
|
||||
|
||||
### 支持项目
|
||||
|
||||
如果这个项目对您有帮助,欢迎给个 ⭐ Star!
|
||||
|
||||
<div align="center">
|
||||
<img src="public/wechat.jpg" alt="微信支付" width="200">
|
||||
<br>
|
||||
<strong>请开发者喝杯咖啡 ☕</strong>
|
||||
</div>
|
||||
|
||||
---
|
||||
|
||||
## 📄 License
|
||||
|
||||
[MIT](LICENSE) © 2025 KatelyaTV & Contributors
|
||||
|
||||
## 🙏 致谢
|
||||
|
||||
- [LibreTV](https://github.com/LibreSpark/LibreTV) — 项目启发
|
||||
- [LunaTV](https://github.com/MoonTechLab/LunaTV) — 原始项目基础
|
||||
- [ArtPlayer](https://github.com/zhw2590582/ArtPlayer) — 强大的网页视频播放器
|
||||
- 感谢所有贡献者和支持者
|
||||
|
||||
---
|
||||
|
||||
<div align="center">
|
||||
<p>❤️ Made with love by KatelyaTV Community</p>
|
||||
</div>
|
||||
@@ -2,6 +2,8 @@
|
||||
|
||||
本文档介绍如何使用 Docker + Kvrocks 部署 KatelyaTV。
|
||||
|
||||
> **⚠️ 重要提醒**:Kvrocks 部署需要配置管理员账号(`USERNAME` 和 `PASSWORD`),否则会出现"页面显示账号密码登录但无法登录"的问题!
|
||||
|
||||
## 🚀 快速开始
|
||||
|
||||
### 方案一:无密码部署(推荐用于开发环境)
|
||||
@@ -22,10 +24,17 @@ nano .env
|
||||
# 数据库配置
|
||||
NEXT_PUBLIC_STORAGE_TYPE=kvrocks
|
||||
KVROCKS_URL=redis://kvrocks:6666
|
||||
# 不设置密码
|
||||
# 不设置 Kvrocks 密码
|
||||
# KVROCKS_PASSWORD=
|
||||
KVROCKS_DATABASE=0
|
||||
|
||||
# 管理员账号配置(必填!)
|
||||
USERNAME=admin
|
||||
PASSWORD=your_admin_password
|
||||
|
||||
# 用户注册配置
|
||||
NEXT_PUBLIC_ENABLE_REGISTER=true
|
||||
|
||||
# 应用配置
|
||||
NEXTAUTH_SECRET=your_nextauth_secret_here
|
||||
NEXTAUTH_URL=http://localhost:3000
|
||||
@@ -72,7 +81,29 @@ docker-compose -f docker-compose.kvrocks.auth.yml up -d
|
||||
|
||||
## 🔧 故障排除
|
||||
|
||||
### 问题 1:密码认证错误
|
||||
### 问题 1:页面显示账号密码登录但无法登录
|
||||
|
||||
**现象:**
|
||||
|
||||
- 部署后页面显示用户名+密码登录界面
|
||||
- 但是只配置了 `PASSWORD` 环境变量
|
||||
- 无法登录或提示"用户名或密码错误"
|
||||
|
||||
**原因:**
|
||||
|
||||
- Kvrocks 部署属于多用户模式,需要配置管理员账号
|
||||
- 缺少 `USERNAME` 环境变量导致系统无法识别管理员
|
||||
|
||||
**解决方案:**
|
||||
|
||||
```bash
|
||||
# 在 .env 文件中添加管理员账号配置
|
||||
USERNAME=admin
|
||||
PASSWORD=your_admin_password
|
||||
NEXT_PUBLIC_ENABLE_REGISTER=true
|
||||
```
|
||||
|
||||
### 问题 2:密码认证错误
|
||||
|
||||
```
|
||||
❌ Kvrocks Client Error: [Error]: ERR Client sent AUTH, but no password is set
|
||||
@@ -85,7 +116,7 @@ docker-compose -f docker-compose.kvrocks.auth.yml up -d
|
||||
- 无密码部署使用:`docker-compose.kvrocks.yml`
|
||||
- 密码认证部署使用:`docker-compose.kvrocks.auth.yml`
|
||||
|
||||
### 问题 2:连接超时
|
||||
### 问题 3:连接超时
|
||||
|
||||
```
|
||||
❌ Failed to connect to Kvrocks: connect ECONNREFUSED
|
||||
|
||||
Reference in New Issue
Block a user