Web GUI for youtube-dl (using the yt-dlp fork) with playlist support. Allows you to download videos from YouTube and hundreds of other sites. Archiving videos from YouTube can be a valuable practice for various reasons. Firstly, it serves as a means of preserving digital content, ensuring that videos remain accessible even if they are removed or restricted on the platform. This is crucial for safeguarding cultural, historical, or educational content that may otherwise be lost. Additionally, archiving allows users to create personal backups of their favorite videos, providing a safeguard against unexpected deletions or changes in content policies. Furthermore, archiving supports research, analysis, and documentation by maintaining a record of evolving online narratives and trends. In essence, the process of archiving videos contributes to the preservation of digital heritage and facilitates the continuation of discussions and knowledge dissemination beyond the limitations of the YouTube platform.
docker run \
--name=metube \
--hostname=metube \
--env=LANG=C.UTF-8 \
--env=UID=1026 \
--env=GID=1000 \
--env=PUID=1026 \
--env=PGID=1000 \
--env=UMASK=022 \
--env=DOWNLOAD_DIR=/downloads \
-p 8081:8081 \
--env=STATE_DIR=/downloads/.metube \
--volume=/docker/downloads:/downloads:rw \
--workdir=/app \
--restart=unless-stopped \
-d \
--label monocker.enable=true \
alexta69/metube:latest python3 app/main.py
This Docker run command is creating and starting a Docker container named “metube” based on the “alexta69/metube:latest” image. Here’s a breakdown of the different options and parameters used in the command:
--name=metube
: Assigns the namemetube
to the Docker container.--hostname=metube
: Sets the hostname of the container tometube
.--env=LANG=C.UTF-8
: Sets the environment variableLANG
to “C.UTF-8
” within the container.--env=UID=1026
and--env=GID=1000
: Define user and group IDs for the container.--env=PUID=1026
and--env=PGID=1000
: Specify process user and group IDs for the container.--env=UMASK=022
: Sets the umask value within the container.--env=DOWNLOAD_DIR=/downloads
: Defines the download directory path within the container.--env=STATE_DIR=/downloads/.metube
: Sets the state directory path within the container.--volume=/docker/downloads:/downloads:rw
: Mounts the host directory/docker/downloads
to the container’s/downloads
directory with read and write permissions.--workdir=/app
: Sets the working directory within the container to/app
.--restart=unless-stopped
: Configures the container to restart automatically unless explicitly stopped.-d
: Runs the container in detached mode, allowing it to operate in the background.alexta69/metube:latest python3 app/main.py
: Specifies the Docker image (alexta69/metube:latest
) and the command to run within the container (python3 app/main.py
).
When started, the MeTube application can be accessed on the 8081 port. Here’s how the UI looks like:

source: