Skip to content

🎬 这是壳儿 - 影视聚合平台 - 豆瓣集成/多源切换/智能匹配 | Next.js + TypeScript | Docker 部署 | Vercel 部署

License

Notifications You must be signed in to change notification settings

unilei/kerkerker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🎬 Kerkerker - 影视资源聚合平台

Next.js TypeScript MongoDB Docker License

现代化影视资源聚合平台 - 支持 Dailymotion 视频源、豆瓣信息匹配、多种部署方式

🌐 在线演示: https://kerkerker.vercel.app

功能特性部署方式环境变量本地开发


✨ 功能特性

  • 🎬 视频聚合 - 聚合 Dailymotion 等多个视频源
  • 📝 豆瓣匹配 - 自动匹配豆瓣电影信息和评分
  • 💬 弹幕功能 - 自动匹配加载弹幕,支持手动搜索
  • 🎥 高级播放器 - ArtPlayer 播放器,支持 HLS、倍速、快捷键
  • 📱 响应式设计 - 完美支持移动端和桌面端
  • 🎨 现代化 UI - Netflix 风格界面设计
  • 🔐 后台管理 - 视频源配置、频道管理 (/login)
  • 🚀 多种部署 - 支持 Vercel、Docker、VPS 一键部署

📸 界面预览

点击展开预览图

首页

首页

搜索页

搜索

详情页

详情页

播放页

播放页


🚀 部署方式

方式一:Vercel 部署(推荐)

无需服务器,免费托管,自动 HTTPS

Deploy with Vercel

步骤:

  1. 点击上方按钮,Fork 项目到 Vercel
  2. 在 Vercel 控制台设置环境变量:
    MONGODB_URI=mongodb+srv://user:password@cluster.mongodb.net/kerkerker
    ADMIN_PASSWORD=your_password
    
  3. 部署完成!

💡 提示:Vercel 部署需要使用云端 MongoDB(如 MongoDB Atlas 免费版)


方式二:Docker Compose 部署

快速启动

# 1. 克隆项目
git clone https://github.com/unilei/kerkerker.git
cd kerkerker

# 2. 创建配置文件
cp .env.example .env

# 3. 编辑配置(可选)
nano .env

# 4. 启动服务
docker-compose up -d

# 5. 查看日志
docker-compose logs -f app

docker-compose.yml 说明

services:
  app:
    build: .
    ports:
      - "3000:3000" # 修改左侧端口号自定义访问端口
    environment:
      - ADMIN_PASSWORD=${ADMIN_PASSWORD}
      - MONGODB_URI=mongodb://mongodb:27017/kerkerker
    depends_on:
      mongodb:
        condition: service_healthy

  mongodb:
    image: mongo:7
    volumes:
      - mongodb-data:/data/db # 数据持久化

常用命令

docker-compose up -d       # 后台启动
docker-compose down        # 停止服务
docker-compose logs -f     # 查看日志
docker-compose restart     # 重启服务
docker-compose pull        # 更新镜像

方式三:VPS 一键部署

在任何装有 Docker 的服务器上执行:

# 使用 curl
curl -fsSL https://raw.githubusercontent.com/unilei/kerkerker/master/scripts/install.sh | bash

# 使用 wget
wget -qO- https://raw.githubusercontent.com/unilei/kerkerker/master/scripts/install.sh | bash

部署后管理:

cd ~/kerkerker
./kerkerker.sh start     # 启动
./kerkerker.sh stop      # 停止
./kerkerker.sh restart   # 重启
./kerkerker.sh logs      # 日志
./kerkerker.sh update    # 更新
./kerkerker.sh backup    # 备份

⚙️ 环境变量

必需变量

变量名 说明 示例
MONGODB_URI MongoDB 连接字符串 mongodb+srv://user:pass@cluster.mongodb.net/db

可选变量

变量名 说明 默认值
ADMIN_PASSWORD 后台管理密码 admin123
MONGODB_DB_NAME 数据库名称 kerkerker
NEXT_PUBLIC_DANMU_API_URL 弹幕 API 地址 https://danmuapi1-eight.vercel.app
NEXT_PUBLIC_DANMU_API_TOKEN 弹幕 API Token -

MongoDB URI 示例

# Docker 内部(docker-compose 自动配置)
MONGODB_URI=mongodb://mongodb:27017/kerkerker

# 本地 MongoDB
MONGODB_URI=mongodb://localhost:27017/kerkerker

# MongoDB Atlas(云端)
MONGODB_URI=mongodb+srv://username:password@cluster.mongodb.net/kerkerker

💻 本地开发

使用 Docker(推荐)

# 启动开发环境(包含 MongoDB)
npm run docker:dev

# 停止服务
docker-compose -f docker-compose.dev.yml down

不使用 Docker

# 1. 安装依赖
npm install

# 2. 配置环境变量
cp .env.example .env
# 编辑 .env,设置 MONGODB_URI

# 3. 启动开发服务器
npm run dev

# 4. 访问
open http://localhost:3000

脚本说明

命令 说明
npm run dev 启动开发服务器
npm run build 构建生产版本
npm run docker:dev Docker 开发环境(热重载)
npm run docker:prod 构建并推送 Docker 镜像

📁 项目结构

kerkerker/
├── app/                    # Next.js App Router
├── components/             # React 组件
│   └── player/             # 播放器组件
│       ├── LocalHlsPlayer.tsx  # 本地 HLS 播放器
│       └── DanmakuPanel.tsx    # 弹幕搜索面板
├── lib/                    # 工具库
│   ├── cache.ts            # 内存缓存
│   ├── db.ts               # MongoDB 连接
│   └── player/             # 播放器工具
│       └── danmaku-service.ts  # 弹幕服务
├── scripts/                # 部署脚本
│   └── install.sh          # 一键部署脚本
├── docker-compose.yml      # 生产环境
├── docker-compose.dev.yml  # 开发环境
└── docker-compose.server.yml

📄 License

MIT License © 2026

About

🎬 这是壳儿 - 影视聚合平台 - 豆瓣集成/多源切换/智能匹配 | Next.js + TypeScript | Docker 部署 | Vercel 部署

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages