Docker of AllTube Download
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
Dnomd343 8ddd8e2ce0 docs: update nginx example and docker build command 1 year ago
nginx feat: add port settings 2 years ago
.gitignore chore: add git ignore file 2 years ago
Dockerfile build: yt-dlp version `2023.11.16` 1 year ago
README.md docs: update nginx example and docker build command 1 year ago
attach.css update: attach css style 2 years ago
init.sh build: yt-dlp version `2023.06.22` 2 years ago

README.md

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