🔥Tube Archivist:一款自托管的油管媒体管理器,支持下载视频和添加到Jellyfin

tubearchivist

随着你的油管视频收藏不断增多,查找特定视频可能会变得困难。这就是Tube Archivist发挥作用的地方:通过从油管获取元数据来索引你收藏的视频,你可以方便地通过一个简洁的网页界面离线管理和搜索你存档的油管视频,轻松享受它们。这包括:

  • 订阅你喜欢的油管频道
  • 使用yt-dlp下载视频
  • 建立索引,使视频可搜索
  • 播放视频
  • 追踪已观看和未观看的视频

除此之外,还包括以下增强更能:

  • Discord:在的Discord服务器上与开发者交流。
  • r/TubeArchivist:加入开发者的Subreddit。
  • 浏览器扩展: Tube Archivist Companion,适用于Firefox和Chrome
  • Jellyfin插件:将你的视频添加到Jellyfin
  • Plex插件:将你的视频添加到Plex

🛠️ 安装Tube Archivist

Tube Archivist 系统最小需求大约需要2GB的可用内存用于小型测试设置,以及4GB的可用内存用于中型到大型安装。建议使用双核四线程的处理器,更好的是四核加。该项目需要Docker,请确保已在您的系统上安装并运行。当然也支持在Unraid, Synology, Podman and True NAS等设备上部署。

1️⃣ Docker安装

建议直接使用Docker Compose 进行部署,这样会比较方便管理和更新容器。Tube Archivist依赖Elasticsearch和Redis,以下compose文件已经包含了二者,当然你也可以将它们单独拿出来部署,也是一样的效果。

version: '3.9'

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     # ES的地址和端口
      - REDIS_HOST=archivist-redis          # Redis
      - HOST_UID=1000
      - HOST_GID=1000
      - TA_HOST=tubearchivist.local         # host名称或域名地址
      - TA_USERNAME=tubearchivist           # 设置tubearchivist的管理员账号
      - TA_PASSWORD=verysecret              # 设置tubearchivist的管理员密码
      - ELASTIC_PASSWORD=verysecret         # ES的密码
      - TZ=Asia/Shanghai               # 时区
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8000/health"]
      interval: 2m
      timeout: 10s
      retries: 3
      start_period: 30s
    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=verysecret"       # 设置ES的密码
      - "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_HOST TA的host或域名 必填
TA_USERNAME 初始化管理员账号 必填
TA_PASSWORD 初始化管理员密码 必填
ELASTIC_PASSWORD ES的密码 必填
REDIS_HOST Redis地址 必填
TZ 时区 必填
TA_PORT 访问端口 选填
TA_UWSGI_PORT 覆盖TA容器内部端口 选填
TA_ENABLE_AUTH_PROXY 开启反向代理中转发身份验证 选填,true/fase
TA_AUTH_PROXY_USERNAME_HEADER 包含要登录的用户名的标头 选填
TA_AUTH_PROXY_LOGOUT_URL 转发身份验证的注销URL 选填
ES_URL ElasticSearch的URL 选填
ES_DISABLE_VERIFY_SSL 禁用ElasticSearch SSL证书验证 选填
ES_SNAPSHOT_DIR ElasticSearch存储主节点/数据节点快照的自定义路径 选填
HOST_GID 允许TA而不是容器用户拥有视频文件 选填
HOST_UID 允许TA而不是容器用户拥有视频文件 选填
ELASTIC_USER 更改默认的ElasticSearch用户 选填
REDIS_PORT Redis端口 选填
DJANGO_DEBUG 返回其他错误消息,仅用于调试 选填

ElasticSearch

变量 说明
ELASTIC_PASSWORD ElasticSearch的访问密码 必填
http.port ElasticSearch的端口 选填

2️⃣ Unraid安装

Tube Archivist及其所有依赖项都位于社区应用程序商店中。你需要安装三个容器,如下所示:

  1. TubeArchivist-RedisJSON:此容器充当应用程序和文件系统之间的缓存和临时链接。用于存储和显示消息和配置变量。
    tubearchivist

  2. TubeArchivist-ES:ElasticSearch存储视频元数据并使所有内容可搜索。还跟踪下载队列。
    tubearchivist

  3. TubeArchivist:一旦您的油管视频收藏变得庞大,就很难搜索和找到特定的视频。这就是Tube Archivist发挥作用的地方:通过使用油管的元数据对您的视频收藏进行索引,您可以在方便的Web界面中组织、搜索和欣赏离线存档的油管视频,而无需麻烦。
    tubearchivist

3️⃣ Synology安装

与以上2种类似,同样是在Docker套件中安装三个容器,分别是:bbilly1/tubearchivist-esredis/redis-stack-serverbbilly1/tubearchivist,笔者就不赘述了。

🎉 使用Tube Archivist

三个容器安装完成后,在浏览器中打开:http://your-ip:8000,即可开启玩耍时刻~~
tubearchivist

原创不易,如果觉得此文对你有帮助,不妨点赞+收藏+关注,你的鼓励是我持续创作的动力!

高等精灵实验室

原创文章,作者:诺多,如若转载,请注明出处:https://www.huluohu.com/posts/1021/

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
🚀 DooTask:一款轻量级开源任务管理工具,支持NAS部署!
上一篇 2024年4月16日 12:08
🚀 NAS机友必知: 一个命令轻松搞定DockerHub被墙问题!
下一篇 2024年6月10日 09:09

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

评论列表(1条)

  • 刘郎
    刘郎 2024年5月17日 10:19

    路过随便看看,顺便学习学习😂