mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2026-11-06 02:54:26 +00:00
nginx resolves its upstreams once, at start, so the frontend starts through a guard that waits until `backend` and `exporter` resolve. A container resolves with a search domain, and the zone of a deployment answers every name with the address of the ingress. A service that Docker's DNS did not know yet therefore resolved anyway, as `backend.<domain>`. The guard let nginx start at once and nginx pinned the ingress as its backend. Every API call then failed with 502 and the SPA showed "Bad Gateway" instead of the login form, until the container was restarted. The guard now asks for the absolute names, `backend.` and `exporter.`. The search domain is not applied to those, so the lookup fails until the services themselves resolve. Closes #806 Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>