diff --git a/docker/docker-compose.yml b/docker/docker-compose.yml index 37c5cf2629..1741db3694 100644 --- a/docker/docker-compose.yml +++ b/docker/docker-compose.yml @@ -146,7 +146,7 @@ services: haproxy: restart: always container_name: haproxy-certbot - image: nmarus/haproxy-certbot + image: xalauc/haproxy-certbot:1.7.9 volumes: - ./haproxy/config:/config - ./haproxy/letsencrypt:/etc/letsencrypt diff --git a/docker/haproxy/config/haproxy.cfg b/docker/haproxy/config/haproxy.cfg index 29de26680b..8ba0ce50c7 100644 --- a/docker/haproxy/config/haproxy.cfg +++ b/docker/haproxy/config/haproxy.cfg @@ -23,6 +23,13 @@ defaults timeout connect 5000ms timeout client 50000ms timeout server 50000ms + timeout tunnel 1h # timeout to use with WebSocket and CONNECT + + default-server init-addr none + +#enable resolving throught docker dns and avoid crashing if service is down while proxy is starting +resolvers docker_resolver + nameserver dns 127.0.0.11:53 listen stats bind *:9999 @@ -39,8 +46,8 @@ listen mqtt-in timeout server 3h option tcplog balance leastconn - server tbMqtt1 tb-mqtt-transport1:1883 check - server tbMqtt2 tb-mqtt-transport2:1883 check + server tbMqtt1 tb-mqtt-transport1:1883 check inter 5s resolvers docker_resolver resolve-prefer ipv4 + server tbMqtt2 tb-mqtt-transport2:1883 check inter 5s resolvers docker_resolver resolve-prefer ipv4 frontend http-in bind *:${HTTP_PORT} @@ -81,20 +88,20 @@ backend tb-web-backend balance leastconn option tcp-check option log-health-checks - server tbWeb1 tb-web-ui1:8080 check - server tbWeb2 tb-web-ui2:8080 check + server tbWeb1 tb-web-ui1:8080 check inter 5s resolvers docker_resolver resolve-prefer ipv4 + server tbWeb2 tb-web-ui2:8080 check inter 5s resolvers docker_resolver resolve-prefer ipv4 http-request set-header X-Forwarded-Port %[dst_port] backend tb-http-backend balance leastconn option tcp-check option log-health-checks - server tbHttp1 tb-http-transport1:8081 check - server tbHttp2 tb-http-transport2:8081 check + server tbHttp1 tb-http-transport1:8081 check inter 5s resolvers docker_resolver resolve-prefer ipv4 + server tbHttp2 tb-http-transport2:8081 check inter 5s resolvers docker_resolver resolve-prefer ipv4 backend tb-api-backend balance leastconn option tcp-check option log-health-checks - server tbApi1 tb1:8080 check - server tbApi2 tb2:8080 check + server tbApi1 tb1:8080 check inter 5s resolvers docker_resolver resolve-prefer ipv4 + server tbApi2 tb2:8080 check inter 5s resolvers docker_resolver resolve-prefer ipv4