Configuração do Reverse Proxy (Caddy)
O Caddy atua como reverse proxy e load balancer para a aplicação, gerenciando o tráfego HTTP/HTTPS de forma eficiente e segura.
Configuração Atual
O arquivo Caddyfile
configura o Caddy para atuar como reverse proxy para a API:
api.localhost {
handle {
reverse_proxy {
to backend:80
health_interval 10s
health_timeout 5s
health_uri /health
health_headers {
"User-Agent": "Caddy"
}
lb_policy round_robin
}
}
}
Recursos Configurados
Load Balancing
- Política: Round Robin
- Health Checks:
- Intervalo: 10 segundos
- Timeout: 5 segundos
- URI de verificação:
/health
- Header personalizado: User-Agent Caddy
Escalabilidade
A configuração atual está preparada para expansão futura, com suporte a múltiplos backends (comentados no arquivo) e load balancing:
# to backend1:80
# to backend2:80
# to backend3:80
HTTPS Automático
O Caddy gerencia automaticamente certificados SSL/TLS através do Let's Encrypt quando em produção, oferecendo:
- Renovação automática de certificados
- Redirecionamento HTTP para HTTPS
- Configuração zero-touch para SSL/TLS