mirror of
https://git.nadeko.net/Fijxu/invidious.git
synced 2025-06-27 17:38:25 +00:00
60 lines
1.9 KiB
INI
60 lines
1.9 KiB
INI
# Notes:
|
|
# Why I deleted `balance roundrobin`:
|
|
#
|
|
# https://www.haproxy.com/documentation/haproxy-configuration-manual/latest/#4-balance:
|
|
# The load balancing algorithm of a backend is set to roundrobin when no other
|
|
# algorithm, mode nor option have been set. The algorithm may only be set once
|
|
# for each backend.
|
|
#
|
|
# ---
|
|
# Why I removed `option http-keep-alive`: This is on by default
|
|
|
|
# https://git.nadeko.net/Fijxu/docker-compose-configs/src/branch/master/invidious/invidious-all/haproxy.cfg
|
|
|
|
global
|
|
# This because haproxy is dumb and likes to use the maxconnection (somaxconn) from the kernel and that is super mega huge making haproxy oom
|
|
maxconn 8192
|
|
|
|
resolvers docker
|
|
# To be able to use multiple replicas of invidious
|
|
# using domains
|
|
nameserver dns1 127.0.0.11:53
|
|
|
|
defaults
|
|
mode http
|
|
# https://www.haproxy.com/documentation/haproxy-configuration-tutorials/service-reliability/retries/
|
|
# Use another server if one takes too long to reply
|
|
retries 4
|
|
option redispatch
|
|
timeout client 60s
|
|
timeout connect 5s
|
|
# The default timeout of http request on invidious is 10 seconds.
|
|
# If this is less than 10 seconds, the reverse proxy may return
|
|
# "503 service unavailable", not letting invidious respond to
|
|
# the client.
|
|
timeout server 60s
|
|
timeout queue 30s
|
|
# https://www.haproxy.com/documentation/haproxy-configuration-manual/latest/#4.2-http-reuse
|
|
http-reuse safe
|
|
|
|
# Prometheus for graphs
|
|
frontend prometheus
|
|
bind *:8404
|
|
mode http
|
|
http-request use-service prometheus-exporter if { path /metrics }
|
|
no log
|
|
|
|
frontend invidious
|
|
bind *:8001
|
|
|
|
# Use captcha only for /watch path
|
|
use_backend captcha if { path /watch } || { path /watch/ } || { path_beg /.well-known/.git.gammaspectra.live }
|
|
default_backend invidious
|
|
|
|
backend captcha
|
|
server srv1 captcha:4000 check resolvers docker init-addr libc,none
|
|
|
|
backend invidious
|
|
server-template srv 4 invidious:3000 check resolvers docker init-addr libc,none
|
|
|