MeTube:自托管的 yt-dlp 下载管理界面
文章目录
- MeTube:自托管的 yt-dlp 下载管理界面
- 核心功能
- 部署方式
- 配置层次
- 扩展与集成
- 反向代理与 HTTPS
- 项目状态
MeTube:自托管的 yt-dlp 下载管理界面
yt-dlp 是一个命令行视频下载工具,支持 YouTube 等数十个网站。它功能强大,但对普通用户来说,每次下载都要敲命令行并不方便。MeTube 就是为了解决这个问题而生的,它给 yt-dlp 套了一层网页界面,让下载操作变得直观。
核心功能
MeTube 运行在 Docker 容器中,启动后在浏览器打开 8081 端口即可使用。界面简洁,粘贴链接、选择画质、点击下载,整个流程不需要接触命令行。
除了单个视频,它还能处理播放列表和频道批量下载。用户可以配置输出模板、下载目录、并发数量等参数。对于需要定期追踪的频道,MeTube 提供了订阅功能,自动检查更新并加入下载队列。
部署方式
Docker 一行命令就能跑起来:
docker run -d -p 8081:8081 -v /path/to/downloads:/downloads ghcr.io/alexta69/metube也可以用 docker-compose 部署,配置更灵活。环境变量控制着大部分行为,包括最大并发下载数、文件命名模板、存储目录结构、是否自动清理已完成任务等。
配置层次
yt-dlp 的选项在 MeTube 中分三层管理:全局选项、预设、单次下载覆盖。全局选项通过环境变量或 JSON 文件设定,作为所有下载的默认值。预设是命名的选项组合,在界面中可以选择,比如"去广告片段"或"内嵌字幕"。单次覆盖则是针对某一次下载的临时调整。三层叠加时,越具体的层级优先级越高。
预设配置示例:
{"sponsorblock":{"postprocessors":[{"key":"SponsorBlock","categories":["sponsor","selfpromo","interaction"]}]}}扩展与集成
MeTube 支持浏览器扩展,Chrome 和 Firefox 都有对应的插件,右键视频就能发送到 MeTube。iOS 用户可以通过快捷指令从 Safari 分享链接。Raycast 用户也有对应的扩展可用。
对于需要登录才能下载的内容,MeTube 支持上传浏览器 cookies 文件。在界面的高级选项中上传 cookies.txt,之后的下载就会携带这些认证信息。
反向代理与 HTTPS
生产环境中,MeTube 通常跑在 Nginx、Apache 或 Caddy 后面。配置反向代理时需要注意 WebSocket 支持,因为 MeTube 使用 WebSocket 推送下载进度。项目文档中提供了各服务器的配置示例。
项目状态
MeTube 目前有近 14000 个 star,社区活跃。开发者通过 Watchtower 等工具保持 yt-dlp 版本更新,因为视频网站经常调整接口,旧版本可能失效。项目接受功能贡献,但建议先开 issue 讨论实现方案。
本更新,因为视频网站经常调整接口,旧版本可能失效。项目接受功能贡献,但建议先开 issue 讨论实现方案。
