Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
services:tubearchivist [2025/04/17 13:02] – willy | services:tubearchivist [2025/04/18 09:33] (current) – willy | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Tube Archivist ====== | ====== Tube Archivist ====== | ||
- | [[https:// | + | [[https:// |
==== Installation ==== | ==== Installation ==== | ||
- | TubeArchivist is available | + | TubeArchivist is available |
Add the usual dedicated user: | Add the usual dedicated user: | ||
Line 14: | Line 14: | ||
Create the needed folders: | Create the needed folders: | ||
<code bash> | <code bash> | ||
- | mkdir / | + | mkdir / |
- | chown -R tubearchivist: | + | chown tubearchivist: |
+ | su - tubearchivist | ||
+ | mkdir cache es redis | ||
</ | </ | ||
Download the composer file from [[https:// | Download the composer file from [[https:// | ||
<file - docker-compose.yml> | <file - docker-compose.yml> | ||
+ | version: ' | ||
+ | services: | ||
+ | tubearchivist: | ||
+ | container_name: | ||
+ | image: bbilly1/ | ||
+ | ports: | ||
+ | - 8124:8000 | ||
+ | volumes: | ||
+ | - / | ||
+ | - / | ||
+ | environment: | ||
+ | - ES_URL=http:// | ||
+ | - REDIS_CON=redis:// | ||
+ | - TA_HOST=https:// | ||
+ | # Uncommen tthe next two to NOT use SSO: | ||
+ | #- TA_USERNAME=not_needed | ||
+ | #- TA_PASSWORD=not_needed | ||
+ | # Comment the next three to use SSO: | ||
+ | - TA_ENABLE_AUTH_PROXY=true | ||
+ | - TA_AUTH_PROXY_USERNAME_HEADER=HTTP_REMOTE_USER | ||
+ | - TA_AUTH_PROXY_LOGOUT_URL=https:// | ||
+ | - ELASTIC_PASSWORD=<< | ||
+ | - TZ=Europe/ | ||
+ | # Uncomment to enable extra debug: | ||
+ | #- DJANGO_DEBUG=True | ||
+ | depends_on: | ||
+ | - archivist-es | ||
+ | - archivist-redis | ||
+ | networks: | ||
+ | - tubearchivist-net | ||
+ | archivist-redis: | ||
+ | image: redis | ||
+ | container_name: | ||
+ | restart: unless-stopped | ||
+ | expose: | ||
+ | - " | ||
+ | volumes: | ||
+ | - / | ||
+ | depends_on: | ||
+ | - archivist-es | ||
+ | networks: | ||
+ | - tubearchivist-net | ||
+ | |||
+ | archivist-es: | ||
+ | image: bbilly1/ | ||
+ | container_name: | ||
+ | environment: | ||
+ | - " | ||
+ | - " | ||
+ | - " | ||
+ | - " | ||
+ | - " | ||
+ | ulimits: | ||
+ | memlock: | ||
+ | soft: -1 | ||
+ | hard: -1 | ||
+ | volumes: | ||
+ | - / | ||
+ | expose: | ||
+ | - " | ||
+ | networks: | ||
+ | - tubearchivist-net | ||
+ | |||
+ | networks: | ||
+ | tubearchivist-net: | ||
+ | dns_enabled: | ||
</ | </ | ||
+ | |||
+ | This example shows how to use Authelia SSO authentication (for more info see [[services: | ||
+ | |||
+ | Adding **http:// | ||
Pull the images: | Pull the images: | ||
<code bash> | <code bash> | ||
- | su - tubesync | + | su - tubearchivist |
podman compose pull | podman compose pull | ||
</ | </ | ||
- | |||
- | TubeSync doesn' | ||
==== Reverse Proxy ==== | ==== Reverse Proxy ==== | ||
Line 36: | Line 106: | ||
Follow the [[selfhost: | Follow the [[selfhost: | ||
- | This is the working NGINX config file: | + | TubeArchivist requires a subdomain, so i assume you will host as **https:// |
- | <file - tubesync.conf> | + | <file - tube.conf> |
- | location = / | + | |
- | | + | server |
- | } | + | |
+ | listen 443 ssl; | ||
+ | listen 8443 ssl; | ||
+ | http2 on; | ||
+ | |||
+ | access_log | ||
+ | | ||
+ | | ||
- | location ^~ /tubesync/ { | + | |
- | | + | include " |
- | proxy_pass http:// | + | |
- | | + | proxy_pass http:// |
- | | + | |
- | proxy_set_header X-Forwarded-Host $host; | + | |
- | proxy_set_header X-Forwarded-Proto $scheme; | + | |
- | proxy_redirect off; | + | |
- | proxy_http_version 1.1; | + | |
- | proxy_set_header Upgrade $http_upgrade; | + | |
- | proxy_set_header Connection $http_connection; | + | |
} | } | ||
+ | |||
</ | </ | ||
Line 60: | Line 133: | ||
To start it, and set it up on boot, as usual follow my indications [[gentoo: | To start it, and set it up on boot, as usual follow my indications [[gentoo: | ||
< | < | ||
- | ln -s / | + | ln -s / |
</ | </ | ||
and create the following config file: | and create the following config file: | ||
- | <file - / | + | <file - / |
- | USER=tubesync | + | USER=tubearchivist |
- | DESCRIPTION=" | + | DESCRIPTION=" |
</ | </ | ||
Add the service to the default runlevel and start it now: | Add the service to the default runlevel and start it now: | ||
<code bash> | <code bash> | ||
- | rc-update add user-containers.tubesync | + | rc-update add user-containers.tubearchivist |
- | rc-service user-containers.tubesync | + | rc-service user-containers.tubearchivist |
</ | </ | ||
+ | |||
+ | ===== Jellyfin Integration ===== | ||
+ | |||
+ | Use [[https:// | ||
+ | |||
+ | In short, open JellyFin go to administration / plugins and add a new repository with the following details: | ||
+ | * Repository name: TubeArchivistMetadata | ||
+ | * Repository URL: https:// | ||
+ | |||
+ | Now navigate to the plugins and install **TubeArchivistMetadata**, | ||
+ | |||
+ | After Jellyfin is running again, go to the plugins page and configure the TubeArchivistMetadata plugin with the following settings: | ||
+ | * Collection name: whatever you like, maybe YouTube | ||
+ | * TubeArchivist URL: http:// | ||
+ | * TubeArchivist API key: can be found inside TubeArchivist, | ||
+ | |||
+ | Now, to **use** the plugin, in Jellyfin go to settings -> libraries and add a new library of type "TV shows" and unselect all sources fo all kinds except TubeArchivist. | ||
+ | |||