Update invidious configurations

This commit is contained in:
root 2024-12-21 15:55:03 -03:00
parent 2ba2265b65
commit 0e87a939e1
18 changed files with 277 additions and 607074 deletions

View file

@ -1,6 +1,6 @@
services:
inv_sig_helper_cluster:
image: quay.io/invidious/inv-sig-helper
image: git.nadeko.net/fijxu/inv_sig_helper:latest
restart: unless-stopped
mem_limit: "512m"
cpus: 0.2
@ -12,7 +12,7 @@ services:
environment:
- RUST_LOG=warn
deploy:
replicas: 5
replicas: 6
networks:
- invidious
# - gluetun_network

View file

@ -0,0 +1,50 @@
# Docker compose file for Backend 2 of inv.nadeko.net
services:
# INVIDIOUS CLEARNET
invidious:
env_file:
# Env file containing variables like TAG, INV_MEM_*
- .env
# Env file containing INVIDIOUS_* variables
- ../.env
image: "git.nadeko.net/fijxu/invidious-with-companion:${TAG}"
restart: unless-stopped
mem_limit: ${INV_MEM_LIMIT}
mem_reservation: ${INV_MEM_RESERVATION}
cpus: ${INV_CPU} # Limit to X% of the CPU
deploy:
replicas: 4
volumes:
- /var/run/postgresql/.s.PGSQL.5432:/var/run/postgresql/.s.PGSQL.5432:rw
- ./config.yml:/etc/invidious/config.yml:ro
environment:
INVIDIOUS_CONFIG_FILE: "/etc/invidious/config.yml"
INVIDIOUS_REDIS_URL: "tcp://valkey:6379"
depends_on:
- haproxy
# Without depends because haproxy is smart
haproxy:
image: haproxy:lts-alpine
restart: always
ports:
# Invidious
- "127.0.0.1:10070:8001"
# METRICS
- "127.0.0.1:10074:8404"
volumes:
- ./haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg
# ptgen:
# image: git.nadeko.net/fijxu/youtube-po-token-generator:latest
# cpus: 0.1
# restart: unless-stopped
# environment:
# - PORT=7070
# depends_on:
# - haproxy
networks:
default:
name: invidious-2

View file

@ -7,7 +7,7 @@ x-common-config: &common-config
- .env
# Env file containing INVIDIOUS_* variables
- ../.env
image: "git.nadeko.net/fijxu/invidious:${TAG}"
image: "git.nadeko.net/fijxu/invidious-with-companion:${TAG}"
restart: unless-stopped
mem_limit: ${INV_MEM_LIMIT}
mem_reservation: ${INV_MEM_RESERVATION}
@ -17,15 +17,15 @@ x-common-config: &common-config
- /var/run/postgresql/.s.PGSQL.5432:/var/run/postgresql/.s.PGSQL.5432:rw
- ./config.yml:/etc/invidious/config.yml:ro
depends_on:
# - inv_sig_helper
- haproxy
gluetun:
condition: service_healthy
# ptgen:
# condition: service_started
haproxy:
condition: service_started
environment: &env
INVIDIOUS_CONFIG_FILE: "/etc/invidious/config.yml"
healthcheck:
test: wget -nv --tries=1 --spider https://inv.nadeko.net/watch?v=mcYLzu_1cNc || exit 1
interval: 300s
timeout: 5s
retries: 2
# INVIDIOUS_TOKENS_SERVER: http://gluetun:7070
services:
# INVIDIOUS CLEARNET
@ -53,39 +53,12 @@ services:
<<: *env
INVIDIOUS_PORT: "3003"
# SIGNATURE HELPER
# inv_sig_helper:
# image: quay.io/invidious/inv-sig-helper
# restart: unless-stopped
# network_mode: "service:gluetun"
# mem_limit: "512m"
# init: true
# command: ["--tcp", "0.0.0.0:12999"]
# environment:
# - RUST_LOG=info
# depends_on:
# - gluetun
# http3-proxy:
# image: git.nadeko.net/fijxu/http3-ytproxy:latest
# restart: unless-stopped
# network_mode: "service:gluetun"
# depends_on:
# - haproxy
# - gluetun
haproxy:
image: haproxy:lts-alpine
restart: unless-stopped
ports:
# Invidious
- "127.0.0.1:10070:8001"
# TOR
#- "127.0.0.1:10072:8002"
# I2P
#- "127.0.0.1:10073:8003"
# HTTP3-PROXY
#- "127.0.0.1:10071:8004"
# METRICS
- "127.0.0.1:10074:8404"
volumes:
@ -116,15 +89,15 @@ services:
networks:
gluetun_network:
ptgen:
image: git.nadeko.net/fijxu/youtube-po-token-generator:latest
cpus: 0.1
restart: unless-stopped
network_mode: "service:gluetun"
environment:
- HOST=valkey-vpn
depends_on:
- gluetun
# ptgen:
# image: git.nadeko.net/fijxu/youtube-po-token-generator:latest
# cpus: 0.1
# restart: unless-stopped
# network_mode: "service:gluetun"
# environment:
# - PORT=7070
# depends_on:
# - gluetun
networks:
default:

View file

@ -35,9 +35,10 @@ frontend invidious
backend invidious
balance roundrobin
server invidious-1-vpn gluetun:3000 check init-addr libc,none
server invidious-2-vpn gluetun:3001 check init-addr libc,none
server invidious-3-vpn gluetun:3002 check init-addr libc,none
server invidious-4-vpn gluetun:3003 check init-addr libc,none
server invidious-5-vpn gluetun:3004 check init-addr libc,none
server invidious-6-vpn gluetun:3005 check init-addr libc,none
server-template invidious 8 invidious:3000 check resolvers docker init-addr libc,none
# server invidious-1-vpn gluetun:3000 check init-addr libc,none
# server invidious-2-vpn gluetun:3001 check init-addr libc,none
# server invidious-3-vpn gluetun:3002 check init-addr libc,none
# server invidious-4-vpn gluetun:3003 check init-addr libc,none
# server invidious-5-vpn gluetun:3004 check init-addr libc,none
# server invidious-6-vpn gluetun:3005 check init-addr libc,none

View file

@ -0,0 +1,50 @@
# Docker compose file for Backend 2 of inv.nadeko.net
services:
# INVIDIOUS CLEARNET
invidious:
env_file:
# Env file containing variables like TAG, INV_MEM_*
- .env
# Env file containing INVIDIOUS_* variables
- ../.env
image: "git.nadeko.net/fijxu/invidious-with-companion:${TAG}"
restart: unless-stopped
mem_limit: ${INV_MEM_LIMIT}
mem_reservation: ${INV_MEM_RESERVATION}
cpus: ${INV_CPU} # Limit to X% of the CPU
deploy:
replicas: 4
volumes:
- /var/run/postgresql/.s.PGSQL.5432:/var/run/postgresql/.s.PGSQL.5432:rw
- ./config.yml:/etc/invidious/config.yml:ro
environment:
INVIDIOUS_CONFIG_FILE: "/etc/invidious/config.yml"
INVIDIOUS_REDIS_URL: "tcp://valkey:6379"
depends_on:
- haproxy
# Without depends because haproxy is smart
haproxy:
image: haproxy:lts-alpine
restart: always
ports:
# Invidious
- "127.0.0.1:10080:8001"
# METRICS
- "127.0.0.1:10084:8404"
volumes:
- ./haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg
# ptgen:
# image: git.nadeko.net/fijxu/youtube-po-token-generator:latest
# cpus: 0.1
# restart: unless-stopped
# environment:
# - PORT=7070
# depends_on:
# - haproxy
networks:
default:
name: invidious-3

View file

@ -7,7 +7,7 @@ x-common-config: &common-config
- .env
# Env file containing INVIDIOUS_* variables
- ../.env
image: "git.nadeko.net/fijxu/invidious:${TAG}"
image: "git.nadeko.net/fijxu/invidious-with-companion:${TAG}"
restart: unless-stopped
mem_limit: ${INV_MEM_LIMIT}
mem_reservation: ${INV_MEM_RESERVATION}
@ -17,15 +17,15 @@ x-common-config: &common-config
- /var/run/postgresql/.s.PGSQL.5432:/var/run/postgresql/.s.PGSQL.5432:rw
- ./config.yml:/etc/invidious/config.yml:ro
depends_on:
# - inv_sig_helper
- haproxy
gluetun:
condition: service_healthy
# ptgen:
# condition: service_started
haproxy:
condition: service_started
environment: &env
INVIDIOUS_CONFIG_FILE: "/etc/invidious/config.yml"
healthcheck:
test: wget -nv --tries=1 --spider https://inv.nadeko.net/watch?v=mcYLzu_1cNc || exit 1
interval: 300s
timeout: 5s
retries: 2
# INVIDIOUS_TOKENS_SERVER: http://gluetun:7070
services:
# INVIDIOUS CLEARNET
@ -53,39 +53,12 @@ services:
<<: *env
INVIDIOUS_PORT: "3003"
# SIGNATURE HELPER
# inv_sig_helper:
# image: quay.io/invidious/inv-sig-helper
# restart: unless-stopped
# network_mode: "service:gluetun"
# mem_limit: "512m"
# init: true
# command: ["--tcp", "0.0.0.0:12999"]
# environment:
# - RUST_LOG=info
# depends_on:
# - gluetun
# http3-proxy:
# image: git.nadeko.net/fijxu/http3-ytproxy:latest
# restart: unless-stopped
# network_mode: "service:gluetun"
# depends_on:
# - haproxy
# - gluetun
haproxy:
image: haproxy:lts-alpine
restart: unless-stopped
ports:
# Invidious
- "127.0.0.1:10080:8001"
# TOR
#- "127.0.0.1:10082:8002"
# I2P
#- "127.0.0.1:10083:8003"
# HTTP3-PROXY
#- "127.0.0.1:10081:8004"
# METRICS
- "127.0.0.1:10084:8404"
volumes:
@ -116,15 +89,15 @@ services:
networks:
gluetun_network_2:
ptgen:
image: git.nadeko.net/fijxu/youtube-po-token-generator:latest
cpus: 0.1
restart: unless-stopped
network_mode: "service:gluetun"
environment:
- HOST=valkey-vpn-2
depends_on:
- gluetun
# ptgen:
# image: git.nadeko.net/fijxu/youtube-po-token-generator:latest
# cpus: 0.1
# restart: unless-stopped
# network_mode: "service:gluetun"
# environment:
# - PORT=7070
# depends_on:
# - gluetun
networks:
default:

View file

@ -35,11 +35,11 @@ frontend invidious
backend invidious
balance roundrobin
server invidious-1-vpn gluetun:3000 check init-addr libc,none
server invidious-2-vpn gluetun:3001 check init-addr libc,none
server invidious-3-vpn gluetun:3002 check init-addr libc,none
server invidious-4-vpn gluetun:3003 check init-addr libc,none
server invidious-5-vpn gluetun:3004 check init-addr libc,none
server invidious-6-vpn gluetun:3005 check init-addr libc,none
server-template invidious 8 invidious:3000 check resolvers docker init-addr libc,none
# server invidious-1-vpn gluetun:3000 check init-addr libc,none
# server invidious-2-vpn gluetun:3001 check init-addr libc,none
# server invidious-3-vpn gluetun:3002 check init-addr libc,none
# server invidious-4-vpn gluetun:3003 check init-addr libc,none
# server invidious-5-vpn gluetun:3004 check init-addr libc,none
# server invidious-6-vpn gluetun:3005 check init-addr libc,none

View file

@ -8,7 +8,7 @@ services:
- .env
# Env file containing INVIDIOUS_* variables
- ../.env
image: "git.nadeko.net/fijxu/invidious:${TAG}"
image: "git.nadeko.net/fijxu/invidious-with-companion:${TAG}"
restart: unless-stopped
mem_limit: ${INV_MEM_LIMIT}
mem_reservation: ${INV_MEM_RESERVATION}
@ -20,13 +20,9 @@ services:
- ./config.yml:/etc/invidious/config.yml:ro
environment:
INVIDIOUS_CONFIG_FILE: "/etc/invidious/config.yml"
INVIDIOUS_REDIS_URL: "tcp://valkey:6379"
depends_on:
- haproxy
healthcheck:
test: wget -nv --tries=1 --spider https://inv.nadeko.net/watch?v=mcYLzu_1cNc || exit 1
interval: 300s
timeout: 5s
retries: 2
# Without depends because haproxy is smart
haproxy:
@ -35,26 +31,20 @@ services:
ports:
# Invidious
- "127.0.0.1:20100:8001"
# TOR
#- "127.0.0.1:20102:8002"
# I2P
#- "127.0.0.1:20103:8003"
# HTTP3-PROXY
# - "127.0.0.1:10061:8004"
# METRICS
- "127.0.0.1:20104:8404"
volumes:
- ./haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg
ptgen:
image: git.nadeko.net/fijxu/youtube-po-token-generator:latest
cpus: 0.1
restart: unless-stopped
environment:
- HOST=valkey-external
depends_on:
- haproxy
# ptgen:
# image: git.nadeko.net/fijxu/youtube-po-token-generator:latest
# cpus: 0.1
# restart: unless-stopped
# environment:
# - PORT=7070
# depends_on:
# - haproxy
networks:
default:
name: invidious-external
name: invidious-4

View file

@ -0,0 +1,29 @@
# Docker compose file for the feed reciever of inv.nadeko.net
services:
# INVIDIOUS CLEARNET
invidious-feed-reciever:
image: "git.nadeko.net/fijxu/invidious:${TAG}"
restart: unless-stopped
ports:
- "127.0.0.1:20090:3000"
volumes:
- /var/run/postgresql/.s.PGSQL.5432:/var/run/postgresql/.s.PGSQL.5432:rw
- ./config.yml:/etc/invidious/config.yml:ro
environment:
INVIDIOUS_CONFIG_FILE: "/etc/invidious/config.yml"
valkey:
image: valkey/valkey:7.2-alpine
restart: unless-stopped
volumes:
- ./valkey.conf:/usr/local/etc/valkey/valkey.conf
command: "valkey-server /usr/local/etc/valkey/valkey.conf"
# ptgen:
# image: git.nadeko.net/fijxu/youtube-po-token-generator:latest
# cpus: 0.1
# restart: unless-stopped
# environment:
# - PORT=7070
#

View file

@ -0,0 +1,7 @@
maxmemory 1280mb
maxmemory-policy volatile-lfu
# Disable AOF
appendonly no
# Disable RDB
save ""

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -8,7 +8,7 @@ services:
- .env
# Env file containing INVIDIOUS_* variables
- ../.env
image: "git.nadeko.net/fijxu/invidious:${TAG}"
image: "git.nadeko.net/fijxu/invidious-with-companion:${TAG}"
restart: unless-stopped
mem_limit: ${INV_MEM_LIMIT}
mem_reservation: ${INV_MEM_RESERVATION}
@ -20,88 +20,9 @@ services:
- ./config.yml:/etc/invidious/config.yml:ro
environment:
INVIDIOUS_CONFIG_FILE: "/etc/invidious/config.yml"
INVIDIOUS_REDIS_URL: "tcp://valkey:6379"
depends_on:
# - inv_sig_helper
- haproxy
healthcheck:
test: wget -nv --tries=1 --spider https://inv.nadeko.net/watch?v=mcYLzu_1cNc || exit 1
interval: 300s
timeout: 5s
retries: 2
# INVIDIOUS TOR
# invidious-tor:
# env_file:
# - .env
# - ../.env
# - ../.env-tor-i2p
# image: "git.nadeko.net/fijxu/invidious:${TAG}"
# restart: unless-stopped
# mem_limit: "${INV_MEM_LIMIT}"
# mem_reservation: "${INV_MEM_RESERVATION}"
# volumes:
# - /var/run/postgresql/.s.PGSQL.5432:/var/run/postgresql/.s.PGSQL.5432:rw
# - ./config.yml:/etc/invidious/config.yml:ro
# environment:
# INVIDIOUS_CONFIG_FILE: "/etc/invidious/config.yml"
# INVIDIOUS_DOMAIN: "inv.nadekonw7plitnjuawu6ytjsl7jlglk2t6pyq6eftptmiv3dvqndwvyd.onion"
# INVIDIOUS_HTTPS_ONLY: false
# INVIDIOUS_HSTS: false
# depends_on:
# # - inv_sig_helper
# - haproxy
# healthcheck:
# test: wget -nv --tries=1 --spider https://inv.nadeko.net/watch?v=mcYLzu_1cNc || exit 1
# interval: 300s
# timeout: 5s
# retries: 2
# INVIDIOUS I2P
# invidious-i2p:
# env_file:
# - .env
# - ../.env
# - ../.env-tor-i2p
# image: "git.nadeko.net/fijxu/invidious:${TAG}"
# restart: unless-stopped
# mem_limit: "${INV_MEM_LIMIT}"
# mem_reservation: "${INV_MEM_RESERVATION}"
# volumes:
# - /var/run/postgresql/.s.PGSQL.5432:/var/run/postgresql/.s.PGSQL.5432:rw
# - ./config.yml:/etc/invidious/config.yml:ro
# environment:
# INVIDIOUS_CONFIG_FILE: "/etc/invidious/config.yml"
# INVIDIOUS_DOMAIN: "inv.zzls.i2p"
# INVIDIOUS_HTTPS_ONLY: false
# INVIDIOUS_HSTS: false
# depends_on:
# # - inv_sig_helper
# - haproxy
# healthcheck:
# test: wget -nv --tries=1 --spider https://inv.nadeko.net/watch?v=mcYLzu_1cNc || exit 1
# interval: 300s
# timeout: 5s
# retries: 2
#
# SIGNATURE HELPER
# inv_sig_helper:
# image: git.nadeko.net/fijxu/inv_sig_helper:latest
# restart: unless-stopped
# mem_limit: "512m"
# init: true
# command: ["--tcp", "0.0.0.0:12999"]
# environment:
# - RUST_LOG=info
# http3-proxy:
# image: git.nadeko.net/fijxu/http3-ytproxy:latest
# restart: unless-stopped
# volumes:
# - /run/http3-proxy:/tmp:rw
# ports:
# - "127.0.0.1:10061:8080"
# environment:
# DISABLE_WEBP: 1
# Without depends because haproxy is smart
haproxy:
@ -110,28 +31,19 @@ services:
ports:
# Invidious
- "127.0.0.1:10060:8001"
# TOR
- "127.0.0.1:10062:8002"
# I2P
- "127.0.0.1:10063:8003"
# HTTP3-PROXY
# - "127.0.0.1:10061:8004"
# METRICS
- "127.0.0.1:10064:8404"
# STATS
- "127.0.0.1:10065:8405"
volumes:
- ./haproxy.cfg:/usr/local/etc/haproxy/haproxy.cfg
ptgen:
image: git.nadeko.net/fijxu/youtube-po-token-generator:latest
cpus: 0.1
restart: unless-stopped
environment:
- HOST=valkey
- RENEW_INTERVAL=60
depends_on:
- haproxy
# ptgen:
# image: git.nadeko.net/fijxu/youtube-po-token-generator:latest
# cpus: 0.1
# restart: unless-stopped
# environment:
# - PORT=7070
# depends_on:
# - haproxy
networks:
default:

View file

@ -3,7 +3,7 @@ global
maxconn 8192
# 777 perms for all sockets
unix-bind mode 777
stats socket ipv4@0.0.0.0:8405 level admin
# stats socket ipv4@0.0.0.0:8405 level admin
resolvers docker
# To be able to use multiple replicas of invidious

View file

@ -1,6 +1,7 @@
#!/bin/bash
docker compose --file /home/services/invidious/invidious-feed-receiver/docker-compose.yml up -d --force-recreate invidious-feed-reciever --remove-orphans
docker compose --file /home/services/invidious/invidious/docker-compose.yml up -d --force-recreate invidious --remove-orphans
docker compose --file /home/services/invidious/invidious-vpn/docker-compose.yml up -d --force-recreate invidious invidious2 invidious3 invidious4 ptgen --remove-orphans
docker compose --file /home/services/invidious/invidious-vpn-2/docker-compose.yml up -d --force-recreate invidious invidious2 invidious3 invidious4 ptgen --remove-orphans
docker compose --file /home/services/invidious/invidious-external/docker-compose.yml up -d --force-recreate invidious --remove-orphans
docker compose --file /home/services/invidious/invidious-2/docker-compose-novpn.yml up -d --force-recreate invidious --remove-orphans
docker compose --file /home/services/invidious/invidious-3/docker-compose-novpn.yml up -d --force-recreate invidious --remove-orphans
docker compose --file /home/services/invidious/invidious-4/docker-compose.yml up -d --force-recreate invidious --remove-orphans

View file

@ -1,5 +1,6 @@
#!/bin/bash
docker compose --file /home/services/invidious/invidious-feed-receiver/docker-compose.yml up -d --force-recreate --remove-orphans
docker compose --file /home/services/invidious/invidious/docker-compose.yml up -d --force-recreate --remove-orphans
docker compose --file /home/services/invidious/invidious-vpn/docker-compose.yml up -d --force-recreate --remove-orphans
docker compose --file /home/services/invidious/invidious-vpn-2/docker-compose.yml up -d --force-recreate --remove-orphans

View file

@ -1,55 +1,73 @@
services:
# Cache needs to be separated if one backend is using other IP address
# Ex: If the user request a video from the Backend 1, the IP address attached
# to the video information will be the IP of the Backend 1, so if the user changes
# to Backend 2, the returned IP attached to the video information will be from the
# IP address of the Backend 1, which will make videoplayback fail.
valkey:
#https://docs.docker.com/reference/compose-file/fragments/
x-common-config: &common-config
image: valkey/valkey:7.2-alpine
hostname: valkey
restart: unless-stopped
volumes:
- ./valkey.conf:/usr/local/etc/valkey/valkey.conf
command: "valkey-server /usr/local/etc/valkey/valkey.conf"
services:
# Cache needs to be separated since the cache data is bound to the IP
# address of the backend. Is not possible to mix cache between backends.
valkey:
<<: *common-config
networks:
- invidious
valkey-vpn:
image: valkey/valkey:7.2-alpine
restart: unless-stopped
volumes:
- ./valkey.conf:/usr/local/etc/valkey/valkey.conf
command: "valkey-server /usr/local/etc/valkey/valkey.conf"
valkey2:
<<: *common-config
networks:
- gluetun_network
- invidious-2
valkey-vpn-2:
image: valkey/valkey:7.2-alpine
restart: unless-stopped
volumes:
- ./valkey.conf:/usr/local/etc/valkey/valkey.conf
command: "valkey-server /usr/local/etc/valkey/valkey.conf"
valkey3:
<<: *common-config
networks:
- gluetun_network_2
- invidious-3
valkey-external:
image: valkey/valkey:7.2-alpine
restart: unless-stopped
volumes:
- ./valkey.conf:/usr/local/etc/valkey/valkey.conf
command: "valkey-server /usr/local/etc/valkey/valkey.conf"
valkey4:
<<: *common-config
networks:
- invidious-external
- invidious-4
# valkey-with-companion:
# valkey-2:
# image: valkey/valkey:7.2-alpine
# restart: unless-stopped
# volumes:
# - ./valkey.conf:/usr/local/etc/valkey/valkey.conf
# command: "valkey-server /usr/local/etc/valkey/valkey.conf"
# networks:
# - invidious-with-companion
# - invidious-2
#
# valkey-3:
# image: valkey/valkey:7.2-alpine
# restart: unless-stopped
# volumes:
# - ./valkey.conf:/usr/local/etc/valkey/valkey.conf
# command: "valkey-server /usr/local/etc/valkey/valkey.conf"
# networks:
# - invidious-3
#
# valkey-4:
# image: valkey/valkey:7.2-alpine
# restart: unless-stopped
# volumes:
# - ./valkey.conf:/usr/local/etc/valkey/valkey.conf
# command: "valkey-server /usr/local/etc/valkey/valkey.conf"
# networks:
# - invidious-4
#
# valkey-companion:
# image: valkey/valkey:7.2-alpine
# restart: unless-stopped
# volumes:
# - ./valkey.conf:/usr/local/etc/valkey/valkey.conf
# command: "valkey-server /usr/local/etc/valkey/valkey.conf"
# networks:
# - invidious-companion
#
# # INVIDIOUS VALKEY METRICS
# invidious-redis-exporter:
# image: oliver006/redis_exporter
@ -93,14 +111,18 @@ services:
networks:
invidious:
external: true
gluetun_network:
invidious-2:
external: true
gluetun_network_2:
invidious-3:
external: true
invidious-external:
external: true
invidious-with-companion:
invidious-4:
external: true
# gluetun_network:
# external: true
# gluetun_network_2:
# external: true
# invidious-companion:
# external: true
# volumes:
# invidious-valkey: