应用介绍
TubeArchivist 是一款自托管的 YouTube 视频归档工具,让你可以在自己的 NAS 上下载、管理和归档 YouTube 视频和频道,构建属于你自己的私人 YouTube 媒体库。它基于 yt-dlp 开发,提供现代化的 Web 界面,支持订阅频道自动下载,全文搜索视频标题和描述,创建播放列表,是非常受欢迎的 YouTube 归档解决方案。
TubeArchivist 的主要功能包括:自动同步订阅频道,支持下载不同分辨率和格式的视频,完整索引视频信息支持高效搜索,响应式界面适配各种设备,支持多用户,集成了注释系统和播放进度记忆。它还提供了 REST API,可以方便地和其他应用集成,搭配 Jellyfin 或 Emby 可以打造完整的自托管视频流媒体服务。



安装说明
前提依赖
TubeArchivist 使用三个容器协同工作:后端应用、Elasticsearch 用于索引搜索,Redis 用于缓存。所以需要至少 2GB 的可用内存,推荐 4GB 以上,存储需求取决于你要归档的视频数量,建议至少留出 100GB 以上的存储空间。需要 Docker 和 Docker Compose 环境支持。
安装配置
创建 docker-compose.yml 配置如下:
version: '3.3'
services:
tubearchivist:
container_name: tubearchivist
restart: unless-stopped
image: bbilly1/tubearchivist:latest
ports:
- 8000:8000
volumes:
- ./media:/youtube
- ./cache:/cache
- ./config:/root/.cache/yt-dlp
environment:
- ES_URL=http://elasticsearch:9200
- REDIS_HOST=redis
- TZ=Asia/Shanghai
depends_on:
- elasticsearch
- redis
elasticsearch:
container_name: tubearchivist-es
image: docker.elastic.co/elasticsearch/elasticsearch:8.14.1
environment:
- xpack.security.enabled=false
- discovery.type=single-node
- "ES_JAVA_OPTS=-Xms1g -Xmx1g"
volumes:
- ./es-data:/usr/share/elasticsearch/data
restart: unless-stopped
redis:
container_name: tubearchivist-redis
image: redis/redis-stack-server:latest
restart: unless-stopped
使用说明
启动所有容器后,访问 http://你的NAS地址:8000 首次登录会提示你创建管理员账号。登录后你可以导入 YouTube 订阅,支持从 Google 导出文件直接导入,也可以手动添加单个频道或播放列表。配置自动下载后,TubeArchivist 会定期检查订阅频道的更新,自动下载新发布的视频。你可以在界面上搜索视频,创建播放列表,播放视频,或者将视频集成到你的媒体服务器中。