110 lines
2.8 KiB
Plaintext
110 lines
2.8 KiB
Plaintext
|
# {{ ansible_managed }}
|
||
|
version: '3.3'
|
||
|
services:
|
||
|
invidious:
|
||
|
# deploy:
|
||
|
# mode: replicated
|
||
|
# replicas: 6
|
||
|
image: quay.io/invidious/invidious:latest
|
||
|
#image: quay.io/invidious/invidious:latest-arm64
|
||
|
container_name: invidious
|
||
|
security_opt:
|
||
|
- no-new-privileges
|
||
|
environment:
|
||
|
- PUID=1000
|
||
|
- PGID=1000
|
||
|
- TZ=Asia/Singapore
|
||
|
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
|
||
|
logging:
|
||
|
options:
|
||
|
max-size: "1G"
|
||
|
max-file: "4"
|
||
|
depends_on:
|
||
|
- invidious-db
|
||
|
volumes:
|
||
|
- {{ docker_dir }}/invidious/config.yml:/invidious/config/config.yml
|
||
|
restart: unless-stopped
|
||
|
networks:
|
||
|
- invidious
|
||
|
|
||
|
invidious-db:
|
||
|
image: docker.io/library/postgres:14
|
||
|
container_name: invidious-db
|
||
|
restart: unless-stopped
|
||
|
volumes:
|
||
|
- {{ docker_dir }}/invidious/postgres/data:/var/lib/postgresql/data
|
||
|
- {{ docker_dir }}/invidious/config/sql:/config/sql
|
||
|
- {{ docker_dir }}/invidious/docker/init-invidious-db.sh:/docker-entrypoint-initdb.d/init-invidious-db.sh
|
||
|
security_opt:
|
||
|
- no-new-privileges
|
||
|
environment:
|
||
|
- PUID=1000
|
||
|
- PGID=1000
|
||
|
- TZ=Asia/Singapore
|
||
|
- POSTGRES_DB=invidious
|
||
|
- POSTGRES_USER={{ invidious_db_user }}
|
||
|
- POSTGRES_PASSWORD={{ invidious_db_pass }}
|
||
|
healthcheck:
|
||
|
test: ["CMD-SHELL", "pg_isready -U $$POSTGRES_USER -d $$POSTGRES_DB"]
|
||
|
networks:
|
||
|
- invidious
|
||
|
|
||
|
invidious-nginx:
|
||
|
image: nginx:latest
|
||
|
container_name: invidious-nginx
|
||
|
restart: unless-stopped
|
||
|
security_opt:
|
||
|
- no-new-privileges
|
||
|
environment:
|
||
|
- PUID=1000
|
||
|
- PGID=1000
|
||
|
- TZ=Asia/Singapore
|
||
|
volumes:
|
||
|
- {{ docker_dir }}/invidious/nginx.conf:/etc/nginx/nginx.conf:ro
|
||
|
- {{ docker_dir }}/invidious/opt/http3-ytproxy:/opt/http3-ytproxy
|
||
|
depends_on:
|
||
|
- invidious
|
||
|
ports:
|
||
|
- '8911:3000'
|
||
|
networks:
|
||
|
- invidious
|
||
|
|
||
|
invidious-ytproxy:
|
||
|
image: 1337kavin/ytproxy:latest
|
||
|
container_name: invidious-ytproxy
|
||
|
restart: unless-stopped
|
||
|
user: "33:33"
|
||
|
network_mode: "host"
|
||
|
environment:
|
||
|
- TZ=Asia/Singapore
|
||
|
- DISABLE_WEBP=1
|
||
|
volumes:
|
||
|
- {{ docker_dir }}/invidious/opt/http3-ytproxy:/app/socket
|
||
|
|
||
|
invidious-smart-ipv6-rotator:
|
||
|
command: tail -f /dev/null # Just to keep the image in the system
|
||
|
image: quay.io/invidious/smart-ipv6-rotator:latest
|
||
|
container_name: invidious-smart-ipv6-rotator
|
||
|
environment:
|
||
|
- PUID=1000
|
||
|
- PGID=1000
|
||
|
- TZ=Asia/Singapore
|
||
|
restart: unless-stopped
|
||
|
logging:
|
||
|
driver: none
|
||
|
networks:
|
||
|
- invidious
|
||
|
|
||
|
networks:
|
||
|
invidious:
|
||
|
name: invidious
|
||
|
enable_ipv6: true
|
||
|
ipam:
|
||
|
config:
|
||
|
- subnet: fd01:db8:a::/64
|
||
|
gateway: fd01:db8:a::1
|