Add Tube Archivist

This commit is contained in:
Seth For Privacy 2022-09-09 12:31:14 -04:00
parent 6d6984deae
commit 648147f656
No known key found for this signature in database
GPG Key ID: 6B9791C6214D1E57
4 changed files with 116 additions and 0 deletions

View File

@ -0,0 +1,41 @@
{
"$schema": "../schema.json",
"name": "Tube Archivist",
"available": true,
"exposable": true,
"port": 8112,
"id": "tubearchivist",
"tipi_version": 1,
"version": "latest",
"categories": ["media"],
"description": "Once your YouTube video collection grows, it becomes hard to search and find a specific video. That's where Tube Archivist comes in: By indexing your video collection with metadata from YouTube, you can organize, search and enjoy your archived YouTube videos without hassle offline through a convenient web interface.",
"short_desc": "Your self-hosted YouTube media server",
"author": "bbilly1",
"source": "https://github.com/tubearchivist/tubearchivist",
"form_fields": [
{
"type": "text",
"label": "Tube Archivist Username",
"max": 50,
"min": 3,
"required": true,
"env_variable": "TA_USER"
},
{
"type": "password",
"label": "Tube Archivist Password",
"max": 50,
"min": 3,
"required": true,
"env_variable": "TA_PASSWORD"
},
{
"type": "random",
"label": "Elasticsearch Password",
"max": 50,
"min": 3,
"required": true,
"env_variable": "ELASTIC_PASSWORD"
}
]
}

View File

@ -0,0 +1,64 @@
version: "3.7"
services:
tubearchivist:
container_name: tubearchivist
restart: unless-stopped
image: bbilly1/tubearchivist:latest
volumes:
- ${APP_DATA_DIR}/data/media:/youtube
- ${APP_DATA_DIR}/data/cache:/cache
environment:
- ES_URL=http://tubearchivist-es:9200
- REDIS_HOST=archivist-redis
- TA_USERNAME=${TA_USER}
- TA_PASSWORD=${TA_PASSWORD}
- TA_HOST=archivist.privacy.family
- ELASTIC_PASSWORD=${ELASTIC_PASSWORD}
depends_on:
- tubearchivist-es
- tubearchivist-redis
networks:
- tipi_main_network
dns:
- ${DNS_IP}
ports:
- ${APP_PORT}:8000
labels:
traefik.enable: ${APP_EXPOSED}
traefik.http.routers.libreddit.rule: Host(`${APP_DOMAIN}`)
traefik.http.routers.libreddit.entrypoints: websecure
traefik.http.routers.libreddit.service: libreddit
traefik.http.routers.libreddit.tls.certresolver: myresolver
traefik.http.services.libreddit.loadbalancer.server.port: 8000
tubearchivist-redis:
image: redislabs/rejson:latest
container_name: tubearchivist-redis
restart: always
networks:
- tipi_main_network
volumes:
- ${APP_DATA_DIR}/data/redis-data:/data
depends_on:
- archivist-es
tubearchivist-es:
image: bbilly1/tubearchivist-es:latest
container_name: tubearchivist-es
restart: always
environment:
- "xpack.security.enabled=true"
- "ELASTIC_PASSWORD=${ELASTIC_PASSWORD}"
- "discovery.type=single-node"
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
networks:
- tipi_main_network
ulimits:
memlock:
soft: -1
hard: -1
volumes:
- ${APP_DATA_DIR}/data/es:/usr/share/elasticsearch/data
expose:
- "9200"

View File

@ -0,0 +1,11 @@
# Your self-hosted YouTube media server
![Tube Archivist](https://github.com/tubearchivist/tubearchivist/blob/master/assets/tube-archivist-banner.jpg?raw=true "Tube Archivist Banner")
## Core functionality
* Subscribe to your favorite YouTube channels
* Download Videos using **yt-dlp**
* Index and make videos searchable
* Play videos
* Keep track of viewed and unviewed videos

Binary file not shown.

After

Width:  |  Height:  |  Size: 80 KiB