uma nota adicional que se relaciona diretamente com a parte do HAProxy da configuração acima.
Existe um comportamento comum com HAProxy + Discourse em que a reconstrução de um contêiner web (por exemplo, com ./launcher rebuild app1) retornará brevemente respostas de 503 Service Unavailable, porque o HAProxy ainda está enviando tráfego para esse backend enquanto ele está reiniciando. Isso não é um erro no Discourse em si - acontece porque o backend fica momentaneamente indisponível durante a reconstrução.
A solução alternativa recomendada é usar o soquete de administração do HAProxy para:
\t1.\tdesabilitar o servidor no HAProxy antes da reconstrução, e
\t2.\treabilitá-lo após o término da reconstrução
Isso evita esses 503s transitórios.
Existe uma discussão existente no Meta documentando esse comportamento e a explicação da solução alternativa:
Se alguém aqui estiver usando HAProxy para reconstruções contínuas (rolling rebuilds), esse tópico fornece um contexto útil para o motivo pelo qual os comandos do soquete de administração estão incluídos no manual de execução (runbook).