Datura-Network/1-Privacy-Front-Ends/invidious/docker-compose.yml
2024-03-18 17:59:43 +01:00

253 lines
9.8 KiB
YAML

# Warning: This docker-compose file is made for development purposes.
# Using it will build an image from the locally cloned repository.
#
# If you want to use Invidious in production, see the docker-compose.yml file provided
# in the installation documentation: https://docs.invidious.io/installation/
version: "3"
services:
#ipv6nat:
# container_name: ipv6nat
# privileged: true
# network_mode: host
# restart: unless-stopped
# volumes:
# - '/var/run/docker.sock:/var/run/docker.sock:ro'
# - '/lib/modules:/lib/modules:ro'
# image: robbertkl/ipv6nat
nginx:
image: nginx:latest
restart: unless-stopped
volumes:
- ./nginx.conf:/etc/nginx/nginx.conf:ro
depends_on:
- invidious
ports:
- "127.0.0.1:3000:3000"
http3-ytproxy:
image: 1337kavin/ytproxy:latest
restart: unless-stopped
user: "33:33"
network_mode: "host"
environment:
- DISABLE_WEBP=1
volumes:
- /opt/http3-ytproxy:/app/socket
invidious:
image: quay.io/invidious/invidious:latest
deploy:
replicas: 11
#build:
# context: .
# dockerfile: docker/Dockerfile
restart: unless-stopped
#networks:
#- invidious
#sysctls:
#- net.ipv6.conf.all.disable_ipv6=0
#ports:
#- "127.0.0.1:3000:3000"
environment:
# Please read the following file for a comprehensive list of all available
# configuration options and their associated syntax:
# https://github.com/iv-org/invidious/blob/master/config/config.example.yml
INVIDIOUS_CONFIG: |
channel_threads: 0
feed_threads: 0
use_pubsub_feeds: true
use_innertube_for_captions: true
db:
dbname: invidious
user: kemal
password: kemal
host: invidious-db
port: 5432
check_tables: true
external_port: 443
domain: iv.datura.network
https_only: true
registration_enabled: true
login_enabled: true
statistics_enabled: true
hmac_key: "hudhuahuhiojfjife"
force_resolve: ipv6
banner: '<p><b>Datura Network</b> - <a style="color: orange;" href="https://github.com/iv-org/smart-ipv6-rotator"><u>IPv6 rotating instance</u></a> - <b><a style="color: purple;" href="http://iv.daturab6drmkhyeia4ch5gvfc2f3wgo6bhjrv3pz6n7kxmvoznlkq4yd.onion/"><u>Onion Link</u></a></b> - <a style="color: green;" href="https://matrix.to/#/#nihilism:m.datura.network"><u>Matrix Chat</u></a> - Local Proxying + Dash by default </br>(2024-03-12 : Fine-tuned the performance, Instance is now multi-threaded) </p> <p style="font-size: 14px;"> Donate Monero: <span style="color: orange;"> 82w95Xt27wfSLW1UzK48LrXDWngZr4FJ3gYqUVxQ9inQC2JReT81DesKmjcMWWbiBT4k517UwshY53aDPFuvE8AZ1EnYJZu</span> (Monthly server costs: 50€) </br><b>Server is Paid up until May 2024, THANKS ALL!</b> </p>'
#banner: '<p><b>Datura Network</b> - <b><a style="color: red;">Test Instance (With Registrations) </a></b> - Local Proxying + DASH by default </p> <p style="font-size: 14px;"> Donate Monero: <span style="color: orange;"> 82w95Xt27wfSLW1UzK48LrXDWngZr4FJ3gYqUVxQ9inQC2JReT81DesKmjcMWWbiBT4k517UwshY53aDPFuvE8AZ1EnYJZu</span> </p>'
default_user_preferences:
dark_mode: "dark"
default_home: "Search"
popular_enabled: true
feed_menu: ["Subscriptions", "Playlists"]
autoplay: true
continue: true
continue_autoplay: true
#local: false
local: true
#quality: 720p
quality: dash
quality_dash: auto
healthcheck:
test: wget -nv --tries=1 --spider http://127.0.0.1:3000/api/v1/comments/jNQXAC9IVRw || exit 1
interval: 30s
timeout: 5s
retries: 2
depends_on:
- invidious-db
invidious-refresh:
image: quay.io/invidious/invidious:latest
#build:
# context: .
# dockerfile: docker/Dockerfile
restart: unless-stopped
#networks:
#- invidious
#sysctls:
#- net.ipv6.conf.all.disable_ipv6=0
#ports:
#- "127.0.0.1:3000:3000"
environment:
# Please read the following file for a comprehensive list of all available
# configuration options and their associated syntax:
# https://github.com/iv-org/invidious/blob/master/config/config.example.yml
INVIDIOUS_CONFIG: |
channel_threads: 0
feed_threads: 0
use_pubsub_feeds: true
use_innertube_for_captions: true
db:
dbname: invidious
user: kemal
password: kemal
host: invidious-db
port: 5432
check_tables: true
external_port: 443
domain: iv.datura.network
https_only: true
registration_enabled: true
login_enabled: true
statistics_enabled: true
hmac_key: "hudhuahuhiojfjife"
force_resolve: ipv6
banner: '<p><b>Datura Network</b> - <a style="color: orange;" href="https://github.com/iv-org/smart-ipv6-rotator"><u>IPv6 rotating instance</u></a> - <b><a style="color: purple;" href="http://iv.daturab6drmkhyeia4ch5gvfc2f3wgo6bhjrv3pz6n7kxmvoznlkq4yd.onion/"><u>Onion Link</u></a></b> - <a style="color: green;" href="https://matrix.to/#/#nihilism:m.datura.network"><u>Matrix Chat</u></a> - Local Proxying + Dash by default </br>(2024-03-12 : Fine-tuned the performance, Instance is now multi-threaded) </p> <p style="font-size: 14px;"> Donate Monero: <span style="color: orange;"> 82w95Xt27wfSLW1UzK48LrXDWngZr4FJ3gYqUVxQ9inQC2JReT81DesKmjcMWWbiBT4k517UwshY53aDPFuvE8AZ1EnYJZu</span> (Monthly server costs: 50€) </br><b>Server is Paid up until May 2024, THANKS ALL!</b> </p>'
#banner: '<p><b>Datura Network</b> - <b><a style="color: red;">Test Instance (With Registrations) </a></b> - Local Proxying + DASH by default </p> <p style="font-size: 14px;"> Donate Monero: <span style="color: orange;"> 82w95Xt27wfSLW1UzK48LrXDWngZr4FJ3gYqUVxQ9inQC2JReT81DesKmjcMWWbiBT4k517UwshY53aDPFuvE8AZ1EnYJZu</span> </p>'
default_user_preferences:
dark_mode: "dark"
default_home: "Search"
popular_enabled: true
feed_menu: ["Subscriptions", "Playlists"]
autoplay: true
continue: true
continue_autoplay: true
#local: false
local: true
#quality: 720p
quality: dash
quality_dash: auto
healthcheck:
test: wget -nv --tries=1 --spider http://127.0.0.1:3000/api/v1/comments/jNQXAC9IVRw || exit 1
interval: 30s
timeout: 5s
retries: 2
depends_on:
- invidious-db
invidious-tor:
build:
context: .
dockerfile: docker/Dockerfile
restart: unless-stopped
#networks:
#- invidious
#sysctls:
#- net.ipv6.conf.all.disable_ipv6=0
ports:
- "127.0.0.1:3002:3000"
environment:
# Please read the following file for a comprehensive list of all available
# configuration options and their associated syntax:
# https://github.com/iv-org/invidious/blob/master/config/config.example.yml
INVIDIOUS_CONFIG: |
db:
dbname: invidious
user: kemal
password: kemal
host: invidious-db
port: 5432
check_tables: true
external_port: 443
domain: iv.daturab6drmkhyeia4ch5gvfc2f3wgo6bhjrv3pz6n7kxmvoznlkq4yd.onion
https_only: false
registration_enabled: true
login_enabled: true
statistics_enabled: true
hmac_key: "hudhuahuhiojfjife"
force_resolve: ipv6
banner: '<p><b>Datura Network</b> - <a style="color: orange;" href="https://github.com/iv-org/smart-ipv6-rotator"><u>IPv6 rotating instance</u></a> - <b><a style="color: purple;" href="http://iv.daturab6drmkhyeia4ch5gvfc2f3wgo6bhjrv3pz6n7kxmvoznlkq4yd.onion/"><u>Onion Link</u></a></b> - <a style="color: green;" href="https://matrix.to/#/#nihilism:m.datura.network"><u>Matrix Chat</u></a> - Local Proxying + Dash by default </br>(2024-03-12 : Fine-tuned the performance, Instance is now multi-threaded) </p> <p style="font-size: 14px;"> Donate Monero: <span style="color: orange;"> 82w95Xt27wfSLW1UzK48LrXDWngZr4FJ3gYqUVxQ9inQC2JReT81DesKmjcMWWbiBT4k517UwshY53aDPFuvE8AZ1EnYJZu</span> (Monthly server costs: 50€) </br><b>Server is Paid up until May 2024, THANKS ALL!</b> </p>'
#banner: '<p><b>Datura Network</b> - <b><a style="color: red;">Test Instance (With Registrations) </a></b> - Local Proxying + DASH by default </p> <p style="font-size: 14px;"> Donate Monero: <span style="color: orange;"> 82w95Xt27wfSLW1UzK48LrXDWngZr4FJ3gYqUVxQ9inQC2JReT81DesKmjcMWWbiBT4k517UwshY53aDPFuvE8AZ1EnYJZu</span> </p>'
default_user_preferences:
dark_mode: "dark"
default_home: "Search"
popular_enabled: true
feed_menu: ["Subscriptions", "Playlists"]
autoplay: true
continue: true
continue_autoplay: true
#local: false
local: true
#quality: 720p
quality: dash
quality_dash: auto
healthcheck:
test: wget -nv --tries=1 --spider http://127.0.0.1:3000/api/v1/comments/jNQXAC9IVRw || exit 1
interval: 30s
timeout: 5s
retries: 2
depends_on:
- invidious-db
invidious-db:
image: docker.io/library/postgres:14
restart: unless-stopped
#networks:
#- invidious
#sysctls:
#- net.ipv6.conf.all.disable_ipv6=0
volumes:
- postgresdata:/var/lib/postgresql/data
- ./config/sql:/config/sql
- ./docker/init-invidious-db.sh:/docker-entrypoint-initdb.d/init-invidious-db.sh
environment:
POSTGRES_DB: invidious
POSTGRES_USER: kemal
POSTGRES_PASSWORD: kemal
healthcheck:
test: ["CMD-SHELL", "pg_isready -U $$POSTGRES_USER -d $$POSTGRES_DB"]
volumes:
postgresdata:
networks:
default:
enable_ipv6: true
ipam:
config:
- subnet: fd00:dead:bffe::/64