# {{ ansible_managed }} version: "3.8" 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