Merge branch 'app/tubearchivist' of https://github.com/sethforprivacy/runtipi-appstore into sethforprivacy-app/tubearchivist
This commit is contained in:
commit
ba594ce041
41
apps/tubearchivist/config.json
Normal file
41
apps/tubearchivist/config.json
Normal 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"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
66
apps/tubearchivist/docker-compose.yml
Normal file
66
apps/tubearchivist/docker-compose.yml
Normal file
|
@ -0,0 +1,66 @@
|
||||||
|
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=tubearchivist-redis
|
||||||
|
- HOST_UID=${UID}
|
||||||
|
- HOST_GID=${GID}
|
||||||
|
- TA_USERNAME=${TA_USER}
|
||||||
|
- TA_PASSWORD=${TA_PASSWORD}
|
||||||
|
- TA_HOST=${APP_DOMAIN}
|
||||||
|
- 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.tubearchivist.rule: Host(`${APP_DOMAIN}`)
|
||||||
|
traefik.http.routers.tubearchivist.entrypoints: websecure
|
||||||
|
traefik.http.routers.tubearchivist.service: tubearchivist
|
||||||
|
traefik.http.routers.tubearchivist.tls.certresolver: myresolver
|
||||||
|
traefik.http.services.tubearchivist.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:
|
||||||
|
- tubearchivist-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"
|
21
apps/tubearchivist/metadata/description.md
Normal file
21
apps/tubearchivist/metadata/description.md
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
# 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
|
||||||
|
|
||||||
|
## If you have issues running Tube Archivist
|
||||||
|
|
||||||
|
Please visit the following URL and ensure neither of the tips resolve the issue:
|
||||||
|
|
||||||
|
https://github.com/tubearchivist/tubearchivist#potential-pitfalls
|
||||||
|
|
||||||
|
If they do not, please open an app here and tag @sethforprivacy:
|
||||||
|
|
||||||
|
https://github.com/meienberger/runtipi-appstore/issues
|
BIN
apps/tubearchivist/metadata/logo.jpg
Normal file
BIN
apps/tubearchivist/metadata/logo.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 80 KiB |
Loading…
Reference in New Issue
Block a user