mirror of
https://git.nadeko.net/Fijxu/invidious.git
synced 2025-12-14 00:55:10 +00:00
chore: add development compose and configs
This commit is contained in:
59
docker/haproxy.cfg
Normal file
59
docker/haproxy.cfg
Normal file
@@ -0,0 +1,59 @@
|
||||
# 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
|
||||
|
||||
Reference in New Issue
Block a user