本内容来源于@什么值得买APP,观点仅代表作者本人 |作者:羊刀仙
本期来介绍一个还算新的开源Docker项目————yt-dlp-web-ui,作者因嫌弃 yt-dlp 的 Web UI 和 RPC 服务器非常糟糕,所以设计为自托管。项目可以从油管,B站,网易云、播客等 1000+ 个国内外平台获取站点的内容到你的服务器/NAS中,相当于把他们全都搬到你的本地。(大家如果着急看效果,可以直接划到最后一节。)

此项目的典型应用场景包括 NAS 媒体库的 自动归档 和 直播流监控,可用于高效管理和存储在线视频内容。此外,项目支持通过 --driver 参数灵活指定不同版本的 yt-dlp 执行文件,以适配各种需求。最新版本已全面支持 2025 年 YouTube 平台的 HDR10+ 格式下载。
项目特点基于 yt-dlp。 使用 yt-dlp 作为核心下载引擎,支持数百个流媒体网站。
️ Web UI 界面。通过 Web 界面操作,无需命令行,适合普通用户使用。提供直观的 URL 输入框、格式选择等功能。
⭕️ 提供 JSON-RPC 1.0 API 和 WebSocket 实时状态推送,支持 JWT 认证(需配置 --auth 参数)
Docker 部署。可以快速部署在 NAS、服务器或本地环境中。
✅ 任务管理。允许管理下载任务,支持查看进度、格式选择、自动重试等。
多格式下载。可选择下载 视频、音频、字幕、封面等,支持多种格式(MP4、MKV、MP3 等)。
开源免费。代码开源,免费使用,可自定义部署和二次开发。
部署流程以威联通NAS为例,通过Docker Compose进行部署。
打开Container Station,将代码修改后粘贴进框内进行创建。
代码如下,可做到开箱即用:
version: "3.7" # 最新版该行可删除 services: yt-dlp-web-ui: image: marcobaobao/yt-dlp-webui container_name: yt-dlp-web-ui ports: - "3033:3033" environment: - JWT_SECRET=randomsecret # RPC 认证的密钥 volumes: - /share/Container/ytdlp/downloads:/downloads # 下载目录 # 下面这个可选,为自定义配置文件,不需要就删除 #- /path/for/config:/config restart: unless-stopped command: - "--auth" - "--user=ydxian" # 自定义用户 - "--pass=123456" # 自定义密码 - "--qs=2" # 限制并发下载,此处为2个,默认也是2个
下载目录并不建议放在Docker目录(或系统目录)中,建议大家换个位置。
关于cofig,如果你要启用OpenID认证,可以在config.yml中写入相关配置,包括普通的用户密码认证也可以写入该文件,配置文件放在/path/for/config路径中。
这部分我删掉了,容器健康监测,喜欢可以加上
healthcheck: test: curl -f http://localhost:3033 || exit 1
另外项目也算是起步阶段,更新可能比较频繁,重新创建就行了。

不太清楚如何配置config文件,或者有进阶需求可以传递自定义 yt-dlp 参数实现,请自行查看wiki。右侧是目录,作者写的很详细。

注意:订阅栏目自动下载、直播监控目前还是测试功能,所以不进行体验展示。
目前有汉化(无需登录就能设置),但是并不完整,有能力的大佬可以参与一把。

在首页,点击登录,上面设置过账户密码。

添加视频地址,也可一次导入多个链接,保证一行一条。。第二个选项可以只下音频。最后那个一般不用勾选,是列表下载。

识别完成会自动下载,可以看到实时速度和进度,支持断点续传。

在设置中选择 启用视频/音频格式选择,再去下载前就会出现选择界面,可以根据需求来。


后面也测试了B站,网易云、播客啥的也都没问题。

还提供了在线播放器。

在NAS中可以看到文件位置,可以把这个路径接入Emby等服务中,方便观看。

很强,很好用,也有很多地方待打磨,大家有啥需求或者发现BUG可以去ISSUES讨论反馈~
祝大家用的开心,本文完。