ClipBucket 介绍与选型指南
ClipBucket 开源视频分享门户 CMS(PHP/MySQL,AAL 许可)认知篇:原版 4.x 已归档、现役 V5 主线 v5.5.3-#221 的架构、功能、部署形态与 MediaCMS/PeerTube/AVS 量化选型对比,全部联网溯源。
ClipBucket 介绍与选型指南
目标:为「自建视频分享网站」选型提供 ClipBucket 的完整认知依据——软件身份、技术架构、功能边界、部署形态与同类横向对比。本文为认知篇,全部信息来自官方仓库、官方文档与 Docker Hub 的联网溯源(查询日期 2026-10-28),未做本地实测;部署与运维实测结论见本专栏《ClipBucket Docker Compose 部署实战》《ClipBucket 配置参数详解》《ClipBucket 常用命令与运维实战》。
一、环境信息
本章说明本文的取证环境与信息来源口径。本文是纯联网溯源的认知篇,所有版本号、星数、功能清单均有对应来源与查询日期,可按同样渠道复核。
- 溯源执行日:2026-10-28(Asia/Shanghai 时区)
- 版本与星数取证渠道:GitHub Releases Atom Feed、shields.io 项目徽章(未直连 api.github.com)
- 部署形态取证渠道:官方 GitHub 仓库 README 与
docker/目录、Docker Hub 镜像仓库与 Registry API - 主要信息来源清单:
- 原版仓库:
https://github.com/arslancb/clipbucket(已归档) - 现役主线仓库:
https://github.com/MacWarrior/clipbucket-v5 - 官方文档站:
https://docs.clipbucket.com - 官方网站(商业侧):
https://clipbucket.com - Docker 镜像:
https://hub.docker.com/r/oxygenz/clipbucket-v5 - 在线演示:
https://demo.clipbucket.oxygenz.fr/
- 原版仓库:
- 同步说明:ClipBucket 原版仓库 GitHub 星数 423(shields.io,2026-10-28);现役 V5 主线星数 183(同渠道同日)。Docker 镜像拉取量 15k(shields.io,2026-10-28)。
二、软件概述
ClipBucket 是一款开源的 PHP 脚本级视频分享网站系统(Video Sharing CMS),定位是「几分钟内搭建你自己的 YouTube 克隆站」。它不是单进程的流媒体服务,而是一套跑在 Nginx/Apache + PHP-FPM + MySQL/MariaDB 之上的 Web 应用:用户注册、上传视频、服务器端 FFmpeg 转码多码率版本、频道订阅、评论、好友、私信、群组、播放列表与合集等门户级社交功能全部内置。
2.1 项目身世与版本现状
ClipBucket 的版本现状有一个关键背景,选型时必须先弄清楚:
| 时间线 | 事件 | 来源 |
|---|---|---|
| 2007 年起 | Arslan Hassan 发布 ClipBucket 原版(arslancb/clipbucket),版权标注 "Copyright (c) 2007 - 2016 by Arslan Hassan et al" | 原版仓库 LICENSE 文件 |
| 2018-05 | 原版发布 4.1 | V5 仓库 README「History」章节 |
| 2019-01 | 原版最后一条官方 Release:ClipBucket 4.2 RC1(亮点为 MySQL 8.0 兼容与 Elasticsearch 插件) | 原版仓库 Releases Atom Feed |
| 2021-11 | 原版 master 分支最后一次代码提交(shields.io last-commit 徽章) | shields.io,2026-10-28 |
| 2022-12 | 原版仓库归档(archived) | V5 仓库 README「History」章节 |
| 2016 年至今 | MacWarrior 维护的社区分支 ClipBucket V5 持续演进,2023 年起归属 Oxygenz 团队,成为事实上的现役主线 | V5 仓库 README |
| 2026-10(查询日) | V5 最新 Release 为 v5.5.3-#221,采用「持续部署」模式(master 即最稳定版本) | shields.io release 徽章 + V5 README,2026-10-28 |
💡 技术拓展:同一产品名下存在两条主线,选型时容易踩坑——
主线 仓库 状态 适用判断 ClipBucket 4.x(原版) arslancb/clipbucket 已归档,代码停更于 2021-11 仅存量站维护参考,新项目勿选 ClipBucket V5(现役) MacWarrior/clipbucket-v5 持续部署,2026-10 仍在发版(v5.5.3-#221) 新建站的唯一合理选择 本文及本专栏全部内容均基于现役主线 ClipBucket V5(v5.5.3-#221)。原版与 V5 的 4.2 → V5 升级路径官方提供了 Wiki 教程(
Upgrade from Clipbucket 4.2)。
2.2 许可证
V5 继承原版许可:Attribution Assurance License(AAL,由 BSD 许可改编)。要点:允许自由使用、修改、再分发,但必须保留原作者署名与产品来源标注。AAL 不是 OSI 之外的怪异许可,但与 GPL 类「传染性 Copyleft」不同,它对二次开发的核心义务是「署名」。选型含义:商业建站可直接使用,页面底部保留 ClipBucket 署名即可;改造源码对外分发时同样需保留许可声明。
2.3 商业生态位
官方两套门面需区分:clipbucket.com 目前面向商业 OTT/VOD 方向(同一团队推出云端产品 Vodlix,含移动端 App 与订阅/广告变现模块);开源社区侧则以 GitHub 仓库、docs.clipbucket.com 文档站、Discord 社区与在线演示站为准。维护方 Oxygenz 另提供商业支持服务(维护更新、SaaS 托管、定制开发、安全审计)。也就是说:开源版可自托管零费用,商业诉求(App、CDN 方案、付费托管)走同门商业产品或 Oxygenz 服务,两者代码同源但产品形态不同。
三、核心架构
从官方仓库结构与 Docker 镜像构建配置(docker/、dockerfile/ 目录)可还原出 V5 的标准部署架构,本章按「一个 LEMP 服务器 + 一个转码引擎」的真实服务器视角拆解。
3.1 组件分层
| 层 | 组件 | 事实依据 |
|---|---|---|
| Web 层 | Nginx(官方镜像用 Nginx;裸机也可 Apache) | 官方镜像 docker/nginx-clipbucket.conf |
| 应用层 | PHP-FPM 8.1–8.5(镜像默认 8.5),核心模块 mysqli/curl/xml/mbstring/gd/openssl/fileinfo,且需要 exec/shell_exec 函数开放 | V5 README「Advanced users」安装要求 |
| 数据层 | MySQL 5.6+ / MariaDB 10.3+(推荐 MariaDB;V5 兼容 MySQL 9+ 与严格模式) | V5 README |
| 转码引擎 | FFmpeg 3+(推荐 4.3+)+ mediainfo,服务器端队列转码 | V5 README;includes/classes/ffmpeg.class.php |
| 可选组件 | Redis(镜像 dev/latest 标签内置)、phpMyAdmin(dev 标签内置)、sendmail | 官方 Dockerfile 构建参数表 |
3.2 代码与数据流
官方镜像的目录布局给出了清晰的路径边界:
- Web 根目录:
/srv/http/clipbucket/upload——全部 PHP 入口、模板(Smarty)、静态资源都在此; - 持久化数据:
upload/files/(视频、缩略图、头像等用户文件)与/var/lib/mysql(数据库)是两个必须持久化的位置; - 转码链路:上传文件先落入
files/temp,入队后由 FFmpeg 按「上传 → 转码队列 → 多码率输出 + 缩略图 → 验证发布」处理,转码日志可从后台查看(后台内置 conversion queue / conversion lab 管理页)。
Nginx 配置里还有两个对规划存储与安全有直接影响的硬事实:client_max_body_size 2M(上传体量限制,生产需要按需调大并同步调 PHP 上传限制);includes/、changelog/、files/temp/ 等路径直接 302 到 403(禁止外部直访,源码与临时文件不出 Web 根)。
3.3 部署形态
V5 官方提供三种安装形态(README「Installation」章):
- Docker:官方镜像
oxygenz/clipbucket-v5,latest标签单容器内置 MariaDB + Redis + PHP-FPM 8.5 + Nginx;lite标签去掉内置数据库、对接外部库;dev-php8.1~8.5(含 xdebug 变体)面向开发调试; - 裸机脚本:
utils/目录提供 Debian/Ubuntu 与 CentOS 7 的一键安装脚本(官方注明「仅适合测试与开发」),进阶用户按上述组件清单自装; - Git 持续部署:clone 仓库到 Web 根,依托内置的数据库升级系统,从后台 Dashboard 一键自更新——官方明确「master 即最稳定版本」。
💡 技术拓展:单容器全家桶 vs 独立数据库部署是这类 PHP CMS 的经典取舍——
形态 特点 适用场景 单容器内置 MariaDB( latest)一个进程组打包 Web+DB+Redis,备份迁移简单 测试、演示、小规模站 应用容器 + 外部数据库( lite)数据库可独立扩容、高可用、专业备份 生产、多实例 裸机 LEMP 性能损耗最小,升级靠 Git 已有服务器运维体系 本专栏《ClipBucket Docker Compose 部署实战》采用官方
latest单容器形态实测,与官方 docker run 示例一致。
四、功能特性
以下功能清单来自 V5 官方 README「Why ClipBucket V5」特性表(2026-10-28 溯源),均为发布说明口径:
| 功能域 | 特性 |
|---|---|
| 视频处理 | UHD 超清分辨率支持、HLS 转码输出、字幕支持、AI NSFW 内容检查 |
| 前端体验 | 暗/亮双主题、Chromecast 投屏、VideoJS 播放器(新版库)、移动端适配 |
| 内容组织 | 递归合集(Recursive collections)、播放列表、群组、照片与视频双形态站点 |
| 元数据 | TMDB 集成(影视信息导入)、年龄限制分级 |
| 社交 | 频道、评论(可视化评论编辑器)、好友、私信、订阅通知 |
| 国际化 | 内置五语翻译(英/法/德/葡/西)、多时区 |
| 运维 | 内置数据库更新系统(持续部署自更新)、后台配置面板、转码队列与日志可视化 |
| 安全 | PHP 8.1–8.5 兼容、安全与代码风格持续修复、匿名使用统计可关闭 |
两点边界说明:其一,原版 4.2 RC1 曾引入的 Elasticsearch 集成插件在 V5 README 特性表中未再出现,检索能力以数据库检索与可选 Redis 为主;其二,「AI NSFW 检查」依赖配置中的外部 AI 接口能力,属于可选开关而非默认开启。
五、快速开始(最小可用示例)
本章给出官方口径的最小启动路径(来源:V5 README「Installation」章 Docker 节,命令逐字引自 README,2026-10-28 查询;本篇未做本地实测,实测全过程见《ClipBucket Docker Compose 部署实战》)。
官方 Docker run 一键启动(单容器内置数据库):
docker run \
--restart unless-stopped \
--pull=always \
-e DOMAIN_NAME=clipbucket.local \
-e MYSQL_PASSWORD=clipbucket_password \
-e UID=1000 \
-e GID=1000 \
-v clipbucket_db:/var/lib/mysql \
-v clipbucket_files:/srv/http/clipbucket \
-p 80:80 \
--name clipbucket \
-d oxygenz/clipbucket-v5:latest
参数说明(README 原表口径):MYSQL_PASSWORD 是容器内 MySQL 的初始化密码;两个卷分别持久化数据库与站点文件;容器首次启动会自动建库(库名/用户名均为 clipbucket)并在源码目录为空时自动拉取最新代码,随后浏览器打开服务器 80 端口即进入安装向导。对外部数据库场景,改用 oxygenz/clipbucket-v5:lite 标签(镜像不含 MariaDB,数据库连接在安装向导中填写)。
六、适用场景与限制
6.1 适用场景
- 中小团队/个人自建视频门户:需要上传-转码-频道-评论完整闭环,PHP 技术栈运维成本最低;
- 企业内训/课程站点:内网部署(官方镜像离线可跑),年龄限制与用户体系直接可用;
- 垂直内容社区:照片+视频混合社区,群组与合集组织内容;
- 二次开发基座:Smarty 模板 + 插件机制 + 多语言包,改造门槛低于重写。
6.2 限制与风险
| 限制 | 事实依据 | 应对建议 |
|---|---|---|
| 主线星数与社区规模小(183★) | shields.io 2026-10-28 | 评估自身排障能力,或采购 Oxygenz 商业支持 |
| PHP 需开放 exec/shell_exec | V5 README 安装要求 | 共享主机不可行;容器化或独立服务器部署 |
| 转码吃 CPU,Nginx 默认上传上限 2M | 官方镜像 nginx 配置 | 预估转码并发,调整 body size 与 PHP 上传限制(详见配置篇) |
| AAL 要求保留署名 | LICENSE 文件 | 保留页面署名标识 |
| 原版 4.x 已死,资料需甄别 | 原版仓库归档 | 检索资料时认准 V5(MacWarrior/clipbucket-v5) |
七、同类选型对比
在「自托管视频平台」这一赛道,与 ClipBucket 定位相邻的三类代表产品:MediaCMS(Python 技术栈的现代媒体 CMS)、PeerTube(联邦化视频平台)、AVS(商业视频脚本)。对比数据均标注查询日期与来源。
7.1 量化对比
| 维度 | ClipBucket V5 | MediaCMS | PeerTube | AVS |
|---|---|---|---|---|
| 产品定位 | 类 YouTube 视频门户 CMS | 现代化媒体 CMS(含 REST API) | 联邦化视频平台(ActivityPub) | 商业视频 CMS 脚本 |
| 技术栈 | PHP 8.1–8.5 + MariaDB/MySQL | Python/Django + Celery + PostgreSQL | TypeScript/Node.js + PostgreSQL + Redis | PHP + MySQL |
| 许可证 | AAL(宽松,需署名) | AGPL-3.0 | AGPL-3.0 | 商业授权(付费) |
| GitHub 星数 | 183(shields.io,2026-10-28) | 5.2k(mediacms-io/mediacms,同渠道同日) | 15k(Chocobozzz/PeerTube,同渠道同日) | 闭源商业产品 |
| 版本节奏 | 持续部署,最新 v5.5.3-#221(2026-10 更新) | 活跃 | v8.3.2(2026-10-28 查询) | 随商业授权发布 |
| 部署形态 | 单容器全家桶 / lite+外部库 / 裸机 LEMP | docker-compose 多容器 | Docker/k8s/YunoHost 生态成熟 | 商业安装包 |
| 内容联邦 | 无 | 无 | ActivityPub 联邦(可互关互通) | 无 |
| 转码 | 服务器端 FFmpeg 队列(CLI 可手动驱动) | Celery 异步转码 | 内置多分辨率转码 | FFmpeg |
| 上手门槛 | PHP 运维最普及,向导安装 | 需 Docker Compose 基础 | 需理解联邦与实例治理 | 需商业授权对接 |
7.2 选型建议
关键差异解读:ClipBucket 的核心竞争力是「PHP 栈的最低运维门槛 + 完整门户社交功能」,短板是社区规模与生态远小于 PeerTube/MediaCMS。因此——
- 团队只有 PHP/MySQL 运维能力,想要「一台上手即用的视频门户」→ ClipBucket V5 是最短路径;
- 需要联邦分发、实例间互关、全球化社区 → PeerTube(AGPL,注意联邦治理成本);
- 需要现代 REST API 优先、Python 技术栈、二次开发做平台产品 → MediaCMS;
- 需要商业授权背书与厂商支持、预算充足 → AVS 或同门商业产品(Vodlix/Oxygenz 托管)。
八、参考链接
- 现役主线仓库:https://github.com/MacWarrior/clipbucket-v5
- 原版仓库(已归档):https://github.com/arslancb/clipbucket
- 官方文档站:https://docs.clipbucket.com
- 官方网站(商业侧):https://clipbucket.com
- 官方 Docker 镜像:https://hub.docker.com/r/oxygenz/clipbucket-v5
- 在线演示:https://demo.clipbucket.oxygenz.fr/
- 4.2 → V5 升级教程(官方 Wiki):https://github.com/MacWarrior/clipbucket-v5/wiki/Upgrade-from-Clipbucket-4.2
- 本专栏实测篇:《ClipBucket Docker Compose 部署实战》、《ClipBucket 配置参数详解》、《ClipBucket 常用命令与运维实战》