Skip to content

dnomd343/alltube-docker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Quick Start

AllTube Download is a Web GUI for youtube-dl, you can use it to download videos from a lot of websites online, even if they don't want you to do this.

AllTube provide an official site to use youtube-dl online, or you can create one under your own domain. Unfortunately, the deployment of AllTube is a bit cumbersome, and a good docker can make your deployment faster.

First of all, you must have a docker environment, if not you should install docker first. After completion, use the following command to start AllTube.

docker run -d --restart always --name alltube -p 24488:80 dnomd343/alltube

After the command is run, Alltube will work on tcp/24488, of course, this port can be arbitrary. We can also specify the working options of Alltube through environment variables, the following are built-in options.

  • TITLE=... :Specify the website title.

  • REMUX=ON :Merge best audio and best video.

  • STREAM=ON :Allow stream videos through server.

  • CONVERT=ON :Enabled audio conversion.

  • PORT=... :Specify the service port, default in 80

Here is an example:

docker run -d --restart always --name alltube \
  --env TITLE="My Alltube Site" \
  --env CONVERT=ON \
  --env STREAM=ON \
  --env REMUX=ON \
  --env PORT=24488 \
  --network host dnomd343/alltube

Next, configure your web server reverse proxy to localhost:24488, let's take Nginx as an example here.

server {
    listen 80;
    server_name video.343.re;  # your domain
    return 301 https://$server_name$request_uri;
}

server {
    listen 443 ssl http2;
    server_name video.343.re;  # your domain
    ssl_certificate /etc/ssl/certs/343.re/fullchain.pem;  # TLS certificate of your domain
    ssl_certificate_key /etc/ssl/certs/343.re/privkey.pem;  # TLS private key of your domain
    location / {
        proxy_http_version 1.1;
        proxy_set_header Connection '';
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_pass http://127.0.0.1:24488;
    }
}

Finally, use the nginx -s reload command to take effect, visit your domain name and enjoy it!

Advanced

If necessary, you can use the following command to build the image yourself.

docker build -t alltube https://github.com/dnomd343/alltube-docker.git

Due to the stagnation of the youtube-dl update, currently we use the yt-dlp project, you can manually change YTDLP in the Dockerfile to specify the latest version.

If you don't need the conversion function, you can remove the installation of ffmpeg, which will reduce the image size to a certain extent.

In addition, the project supports multi-stage builds, using the buildx command will speed up the build process. Below is an example of using buildx to build multi-architecture images.

docker buildx build -t dnomd343/alltube \
  --platform="linux/amd64,linux/386,linux/arm64,linux/arm/v7" \
  https://github.com/dnomd343/alltube-docker.git --push

License

MIT ©2023 @dnomd343