youtube-dl-server

Deploy a web and REST interface to download videos directly to your server. Manage your download queue, configure formats, and automate tasks with the API.

youtube-dl-server provides a simple web interface and a REST API to download videos directly onto your server. Built to work with the popular yt-dlp and youtube-dl backends, it offers a convenient way to manage your video archiving from anywhere. Deployment is straightforward, with official Docker images available for a quick and isolated setup.

The tool is designed for both ease of use and powerful automation:

  • Simple Web UI: Just paste a URL, select your desired format, and start the download. Monitor the progress of all your jobs from a single page.
  • Comprehensive REST API: Automate your download workflow. The API allows you to queue new downloads, list and manage jobs, fetch metadata, and even delete downloaded files.
  • Flexible Configuration: Tailor the application to your needs using a simple config.yml file. You can define default options, output templates, and create named profiles for different download scenarios (e.g., 'audio-only podcast' or '4K video archive').
  • Easy Deployment: Get up and running in minutes using the provided Docker CLI or Docker Compose examples.
  • Convenient Bookmarklet: Use the provided bookmarklet to send the URL of the page you're currently viewing directly to the download queue.

Directory Structure

youtube-dl-server
downloads
.env
docker-compose.yml

docker-compose.yml

services:
  youtube-dl-server:
    image: nbr23/youtube-dl-server:latest
    container_name: youtube-dl-server
    ports:
      - "8080:8080"
    environment:
      - YOUTUBE_DL_UPDATE=true
      - YDL_FORMAT=bestvideo+bestaudio/best
    volumes:
      - ./downloads:/youtube-dl
    restart: unless-stopped

.env

# No sensitive environment variables are required for the basic setup of youtube-dl-server.
Categories:

Share:

Ad
Favicon

 

  
 

Similar to youtube-dl-server

Favicon

 

  
  
Favicon

 

  
  
Favicon