标签搜索

目 录CONTENT

文章目录

Docker部署一个自托管视频下载器yt-dlp-web-ui

yyzq
2025-09-18 / 0 评论 / 1 点赞 / 23 阅读 / 1,124 字

前言

yt-dlp 是一款功能强大的命令行工具,能够从多种网站下载视频,而 yt-dlp-web-ui 则提供了一个直观的 Web 界面,让你无需操作命令行即可轻松完成视频下载。
16-9-1758163724639
通过 Docker 部署 yt-dlp-web-ui,你可以快速搭建一个自用的视频下载平台,便捷地管理和下载所需视频素材。接下来,我们将介绍如何使用 Docker 部署 yt-dlp-web-ui,帮助你更高效地完成创作工作。

项目简介

yt-dlp-web-ui主要是为yt-dlp项目提供 Web UI 界面,默认下载最好质量的视频,可以通过设置选择视频质量和格式,界面也可以配置用户名密码登录

项目图片

登录界面
image-1758161920100
主界面
image-1758162059028
视频质量选择界面
image-1758162037111

主要功能

  • 服务器地址
  • 切换主题
  • 提取音频
  • 切换语言
  • 可选格式选择
  • 覆盖输出文件名
  • 覆盖输出路径
  • 安全地传递自定义 yt-dlp 参数
  • 下载队列(限制并发下载)

部署方法

使用Docker安装

本教程使用docker的方式安装部署,简单便捷
164b6ac419e23bc5390dc46601a202bf

准备条件

1)一台服务器

我们使用莱卡云VPS来演示
尽量选择香港服务器
需要vps的可以看以下信息
莱卡云官网

2)本项目使用到的开源项目

原项目127k stars
https://github.com/yt-dlp/yt-dlp
本项目1.9k stars
https://github.com/marcopiovanello/yt-dlp-web-ui
更多功能或者二次修改可以访问开源项目地址

3)域名(可选)

域名可以根据自己的需求绑定

一、Docker环境部署

在vps安装docker和docker-compose
Docker官方安装文档(英文)
https://duan.yyzq.eu.org/docker-001
Docker-Compose官方安装文档(英文)
https://duan.yyzq.eu.org/docker-002
Centos安装Docker和Docker-compose(中文)
https://duan.yyzq.eu.org//03
Ubuntu安装Docker和Docker-compose(中文)
https://duan.yyzq.eu.org//04

推荐直接用一键脚本

docker安装脚本

bash <(curl -sSL https://cdn.jsdelivr.net/gh/SuperManito/LinuxMirrors@main/DockerInstallation.sh)

docker-compose安装脚本

curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose

二、创建docker-compose.yml文件

mkdir yt-dlp-webui;cd yt-dlp-webui   #创建一个目录,并进入此目录

然后再新建docker-compose.yml

vim docker-compose.yml
services:
  ytdlp-webui:
    image: marcobaobao/yt-dlp-webui  # 使用的镜像
    container_name: ytdlp-webui  # 容器名称
    ports:
      - "3033:3033"  # 映射端口 3033
    environment:
      - JWT_SECRET=randomsecret  # 设置 JWT 密钥,用于生成和验证 token
      - TZ=Asia/Shanghai  # 设置容器的时区为上海时区
    volumes:
      - ./downloads:/downloads  # 映射本地的下载目录
    command: --auth --user admin --pass admin123 --qs 5  # 启用身份验证,设置用户名和密码,并限制并发为 5
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:3033"]  # 健康检查,访问 localhost:3033 判断容器是否正常运行
      interval: 30s  # 健康检查的间隔时间
      retries: 3  # 健康检查失败后重试次数
      start_period: 10s  # 启动后等待 10 秒后开始健康检查
      timeout: 10s  # 每次健康检查的超时时间
    restart: always  # 容器停止后总是重启

三、执行容器运行命令

docker-compose up -d #运行容器
docker-compose ps  #查看是否开启成功

正常启动如下所示

docker-compose ps
NAME          IMAGE                      COMMAND                  SERVICE       CREATED              STATUS                        PORTS
ytdlp-webui   marcobaobao/yt-dlp-webui   "./yt-dlp-webui --ou…"   ytdlp-webui   About a minute ago   Up About a minute (healthy)   0.0.0.0:3033->3033/tcp, [::]:3033->3033/tcp

四、打开web页面使用

成功以后需要打开自己相应的端口3033)防火墙就可以web端访问了

http://ip:3033

初始化
由于我们配置了密码所以需要鉴权
image-1758162563020
登录成功才能使用
image-1758162887657
配置语言
image-1758162771906
下载的视频默认在downloads目录
image-1758163377049
可以通过界面删除视频
image-1758163351544
其他功能自行探索

绑定域名

如需绑定域名的自行绑定

视频教程

B站

YouTube

绑定域名可以参考
NginxProxyManager
https://duan.yyzq.eu.org//npm-ch

有任何问题可以直接留言或者问我
有任何问题可以直接留言或者问我
有任何问题可以直接留言或者问我

欢迎关注我们的微信公众号!
微信公众号

1

评论区