Watching
Tube Archivist
Home of the documentation, additional installation instructions and user guide. Recommended reading for all interested in the project.
Welcome to the official Tube Archivist Docs. This is an up-to-date documentation of user functionality.
Getting Started#
- Subscribe to some of your favourite YouTube channels.
- Scan subscriptions to add the latest videos to the download queue.
- Add additional videos, channels or playlist - ignore the ones you don't want to download.
- Download and let Tube Archivist do it's thing.
- Sit back and enjoy your archived and indexed collection!
Setting up Tube Archivist with Docker#
Overview#
Tube Archivist depends on three containers:
- The Tube Archivist container running the main application
- Redis for queue and cache storage
- ElasticSearch for your index.
Tube Archivist requires Docker. Please make sure that Docker is installed and running on your computer before continuing.
Also see:
For minimal system requirements, the Tube Archivist stack needs around 2GB of available memory for a small testing setup and around 4GB of available memory for a mid to large sized installation. Minimum requirements for CPU are usually expected to be dual core with 4 threads, with better performance coming from quad core and higher, and more available threads.
Save the docker-compose.yml file from the Tube Archivist repository somewhere permanent on your system, keeping it named docker-compose.yml. You'll need to refer to it whenever starting this application.
Install Tube Archivist#
Networking#
The main container serves the interface on port 8000 with Nginx. Nginx is packaged in the container and serves the static files and handles proxy requests to the backend.
- For port collisions, see Docker for Beginners/#networking.
- Alternatively to modify the port, see Environment Variables/#TA_PORT
The React TS based frontend is compiled and served by Nginx from the static folder.
The Python Django based backend is served with uvicorn on the container internal port 8080.
- Only container internal. Nginx handles proxying requests to the backend
- To modify, see Environment Variables/#TA_BACKEND_PORT
Volumes#
This container expects two volumes:
/cache: That is not really a cache any more now in the classical sense but holds persistent data like artwork and more./youtube: Location for your downloaded video files.
Install Redis#
Redis functions as a cache and temporary link between the application and the file system. Redis is used to store and display messages and configuration variables. Redis is also responsible for keeping track of the queues.
- Communicate by default over port
6379 - Needs a volume to allow persistence at
/data.
Install ElasticSearch#
Use bbilly1/tubearchivist-es to automatically get the recommended version, or use the official image with the version tag in the docker-compose.yml file.
Use the official Elasticsearch image for arm64.
Elasticsearch stores the video metadata and enables searchable functionality for all fields. Elasticsearch is also used to keep track of the download queue.
- Needs to be accessible over the default port
9200 - Needs a volume to store persistent data linked to
/usr/share/elasticsearch/data
Follow the documentation for additional installation details and options.
Sources
- Tube Archivist Docs, home pageWelcome line and Getting Started list copied verbatim; icons removed. Upstream commit bb7ee4d.
- Tube Archivist Docs, "Setting up Tube Archivist with Docker"Copied verbatim; the custom-port subsections left out, links made absolute. Upstream commit bb7ee4d.
Copied from the sources above on , by a script that reruns weekly. The words are theirs, unchanged.
Page by Archer