飞牛NAS部署轻量影视聚合神器 Kerkerker,解锁短剧+ 豆瓣评分
最近又发现了一个影视聚合平台,感觉近两月已经发了好几个了,比如omnibox、冬瓜TV等,大体上都差不多,不过这个容器部署还是比较方便的,还能看Dailymotion 的视频、短剧等,一起部署来看看。
什么是kerkerker?
Kerkerker 是一款轻量“壳式”影视聚合平台,不生产内容,专注整合增效。核心支持豆瓣集成、多源切换与智能匹配,轻松获取影视信息及可用播放源。基于 Next.js + TypeScript 构建,提供Docker与 Vercel 两种部署方案,适配不同场景,为用户打造便捷一站式观影入口,也为开发者提供灵活框架。
项目地址:https://github.com/unilei/kerkerker/tree/master
在线演示地址:https://kerkerker.vercel.app
图片
功能特性
🎬 视频聚合 - 聚合 Dailymotion 等多个视频源
📝 豆瓣匹配 - 自动匹配豆瓣电影信息和评分
💬 弹幕功能 - 自动匹配加载弹幕,支持手动搜索
🎥 高级播放器 - ArtPlayer 播放器,支持 HLS、倍速、快捷键
📱 响应式设计 - 完美支持移动端和桌面端
🎨 现代化 UI - Netflix 风格界面设计
🔐 后台管理 - 视频源配置、频道管理 (/login)
🚀 多种部署 - 支持 Vercel、Docker、VPS 一键部署
前期准备:在 Cloudflare Workers上部署 豆瓣API代理
主要是通过API代理调用豆瓣的数据,自动匹配豆瓣电影信息和评分。
功能特性:
❝
-
CORS完整支持(包括OPTIONS预检请求) *- 响应缓存(减少豆瓣 API 请求频率)
健康检查接口 /
health支持
GET/POST请求
部署方式:
手动部署到 Cloudflare Dashboard。
1.登录https://dash.cloudflare.com/ , 登录后点击右上角添加-->workers。
图片2.进入Create Worker页面,由于我第一次使用,没找到项目作者说的直接粘贴代码的地方,所以我采用了笨的办法,先创建了一个hello world。
图片3.名字改成你要取的应用名字,下面代码不用管,直接部署
图片4.回到首页就可以看到一个项目了,然后咱们点击这个项目。
图片5.就可以看到项目详情了,直接点右上角编辑代码。
图片6.清除左边代码框里面之前的代码,然后把下面地址里面的代码复制进去,点击右上角的部署。
https://github.com/unilei/kerkerker/blob/master/docs/cloudflare-douban-proxy.js
图片
7.豆瓣API代理就部署完成,记录好部署的worker的地址,等会儿环境变量里面要用。
项目部署
新建存储目录
安装之前需先在docker文件夹中新建一个kerkeker文件夹,用于配置持久化保存,后面所有相关文件都存在这里。
图片准备Compose文件
❝
这里我先说明一下,由于我看到作者说他线上的镜像没更新,所以我自己构建了一个镜像并推送到了ghcr.io,如果不放心的可以用作者的镜像。
图片打开飞牛os的docker--compose--新增项目--项目名称(填kerkeker,可识别即可),路径选择上面建立好的文件夹“kerkeker”,选择创建docker-compose.yml,然后将下面代码复制粘贴到代码框,为了便于大家理解,我给部分代码加了注释,最后勾上创建项目后立即启动,点击创建即可:
services:
app:
image: ghcr.io/liangminmx/ker:latest
container_name: kerkerker-app
ports:
- "3008:3000"
environment:
- NODE_ENV=production
- ADMIN_PASSWORD=admin123
- MONGODB_URI=mongodb://mongodb:27017/kerkerker
- NEXT_PUBLIC_DOUBAN_API_URL=https://douban-proxy.525293195.workers.dev/ #这里改为前面获取的豆瓣API代理地址
depends_on:
mongodb:
condition: service_healthy
networks:
- kerkerker-network
restart: unless-stopped
# MongoDB 数据库服务
mongodb:
image: mongo:7
container_name: kerkerker-mongodb
ports:
- "27018:27017"
environment:
- MONGO_INITDB_DATABASE=kerkerker
volumes:
- mongodb-data:/data/db
- mongodb-config:/data/configdb
healthcheck:
test: ["CMD", "mongosh", "--eval", "db.adminCommand('ping')"]
interval: 10s
timeout: 5s
retries: 5
networks:
- kerkerker-network
restart: unless-stopped
networks:
kerkerker-network:
driver: bridge
volumes:
mongodb-data:
driver: local
mongodb-config:
driver: local
❝
注意:
端口可自行修改,只要不重复就行。
NEXT_PUBLIC_DOUBAN_API_URL需要改成上面创建的豆瓣workers地址。如果格式不对可让
ai修改。
图片显示正在运行就说明部署成功。
图片项目配置及体验
打开浏览器,输入 http://NASIP:3008 比如我这里就是 http://192.168.1.36:3008 进入项目页面。
图片虽然能看到很多影视信息,但是你点击进去后就会发现无法播放,显示未配置视频源,还是需要配置。
图片直接点击前往配置,会跳转到后台配置界面。
图片页面下方直接显示了登录密码,输入密码,登录后台。
图片点击右边的导入配置,出现导入订阅配置界面,这里需要输入解密密码和订阅URL。
图片到下列页面获取项目作者提供的解密密码和URL。如果您怕麻烦也可以公众号后台回复“kerkerker”直接获取。
https://github.com/unilei/kerkerker/issues/16
填入获取的密码和URL后就视频源了,直接点击合并导入。
图片导入后就可以看到很多资源站了,
图片现在再来看视频就可以播放了。
图片播放效果非常的好,当然由于这只是聚合平台,有些影片有广告的仍然无法避免。
图片最后
从 Cloudflare Workers 搭建豆瓣 API 代理,到 Docker Compose 一键启动服务,再到后台导入订阅源解锁播放功能,整个流程下来其实并没有想象中复杂。
这款基于 Next.js 构建的工具,最亮眼的地方就在于 “聚合” 二字 , 整合 Dailymotion 等多平台资源,还能自动匹配豆瓣评分,搭配 Netflix 风格的 UI 和响应式设计,提供了不错的观影体验。
最后给大家提几个小建议:
登录后台后,记得修改默认的管理员密码(
ADMIN_PASSWORD),避免不必要的权限风险;作为个人自用的影音工具,请注意遵守相关法律法规,切勿将部署的站点公开分享或用于商业用途。
如果在部署过程中遇到问题,可以在评论区留言交流,也可以直接去项目 GitHub 仓库查看官方文档。
❝
另外,按照文中提示,在公众号后台回复
kerkerker,可以快速获取订阅配置信息!
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~

猪的天敌
校验提示文案
ampere_w
校验提示文案
我是懒大王
校验提示文案
ampere_w
校验提示文案
猪的天敌
校验提示文案
我是懒大王
校验提示文案