Create your own personal and permanent archive of YouTube content. If you're concerned about videos being deleted or want to build a searchable offline library from your favorite channels, this tool provides a robust solution. It allows you to subscribe to channels and automatically download new videos, ensuring you never miss out.
Once downloaded, all videos are indexed with metadata from YouTube, making your entire collection instantly searchable. You can easily find specific videos, organize your library, and keep track of what you've watched through a convenient web interface. This project functions as its own media server, giving you full control over your content.
Key features include:
A companion browser extension is also available, which integrates directly into your browser for single-click archival of any video you're watching. As a self-hosted application, you maintain complete ownership and access to your media library.
services:
tubearchivist:
container_name: tubearchivist
restart: unless-stopped
image: bbilly1/tubearchivist
ports:
- 8000:8000
volumes:
- ./media:/youtube
- ./cache:/cache
environment:
- ES_URL=http://archivist-es:9200
- REDIS_HOST=archivist-redis
- HOST_UID=1000
- HOST_GID=1000
- TA_HOST=127.0.0.1
- TA_USERNAME=${TA_USERNAME}
- TA_PASSWORD=${TA_PASSWORD}
- ELASTIC_PASSWORD=${ELASTIC_PASSWORD}
- TZ=UTC
depends_on:
- archivist-es
- archivist-redis
archivist-redis:
image: redis/redis-stack-server
container_name: archivist-redis
restart: unless-stopped
expose:
- "6379"
volumes:
- ./redis:/data
depends_on:
- archivist-es
archivist-es:
image: bbilly1/tubearchivist-es
container_name: archivist-es
restart: unless-stopped
environment:
- "ELASTIC_PASSWORD=${ELASTIC_PASSWORD}"
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
- "xpack.security.enabled=true"
- "discovery.type=single-node"
- "path.repo=/usr/share/elasticsearch/data/snapshot"
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- ./es:/usr/share/elasticsearch/data
expose:
- "9200"TA_USERNAME=tubearchivist
TA_PASSWORD=your_super_secret_password
ELASTIC_PASSWORD=your_super_secret_elastic_passwordAuto-fetched about 23 hours ago
Auto-fetched about 23 hours ago