Public | Automated Build

Last pushed: 6 months ago
Short Description
youtube-dl-server
Full Description

youtube-dl-server

Interface and code forked from manbearwiz/youtube-dl-server to provide a single location to save YouTube videos as MP3s using bottle + youtube-dl.

Also includes an option to use a YouTube API key to search for videos and automagically download the top result as an MP3

How to use this image

Run on host networking

This example uses host networking for simplicitly. Also note the -v argument. This directory will be used to output the resulting videos

sudo docker run -d --net="host" --name youtube-dl -v /home/scott/youtube-dl:/youtube-dl shuaiscott/youtube-dl-server

Start a download remotely

Downloads can be triggered by supplying the {{url}} of the requested video through the Web UI or through the REST interface via curl, etc.

HTML

Just navigate to http://{{address}}:8080/yt and enter the requested {{url}}.

Curl

curl -X POST --data-urlencode "url={{url}}" http://{{address}}:8080/youtube-dl/q

Search for a video

Searches can be triggered by supplying the {{artist}}, {{title}}, and {{album}} through the Web UI or through the REST interface via curl, etc.

Curl

curl -X POST --data-urlencode "artist={{artist}}" --data-urlencode "title={{title}}" --data-urlencode "album={{album}}" http://{{address}}:8080/yt/search

Implementation

The server uses bottle for the web framework and youtube-dl to handle the downloading. For better or worse, the calls to youtube-dl are made through the shell rather then through the python API.

This docker image is based on python:3-onbuild and consequently debian:jessie.

There is now a start-up script that updates all pip libraries so you'll always have the latest version of youtube-dl. To update, just restart the docker container.

Thanks to

CodePen: Material "toast" notification by Danny Davenport (@Dannzzor) on CodePen.

Docker Pull Command
Owner
shuaiscott
Source Repository