blumeops/fly
Erich Blume c6f8fcd346
All checks were successful
Deploy Fly.io Proxy / deploy (push) Successful in 1m3s
Fix fly-deploy WARNING by starting nginx before Tailscale (#128)
## Summary
- Start nginx before Tailscale in `start.sh` so port 8080 is bound immediately, eliminating the "app is not listening on the expected address" WARNING during `fly deploy`
- Switch `proxy_pass` to use a variable with `resolver 100.100.100.100 valid=30s` so nginx can start without resolving MagicDNS names at config load time
- DNS results cached 30s per worker — no per-request lookup overhead

## Context
The WARNING was a race condition: Fly checks for listeners right after the machine starts, but `start.sh` ran ~5-10s of Tailscale setup before starting nginx. The health check always passed later, but the warning was noisy.

## Test plan
- [ ] Merge and let the deploy-fly workflow trigger
- [ ] Check runner logs for absence of the WARNING
- [ ] Verify `docs.eblu.me` still serves correctly
- [ ] Verify `/healthz` still passes

Reviewed-on: https://forge.ops.eblu.me/eblume/blumeops/pulls/128
2026-02-09 07:01:58 -08:00
..
alloy.river Restrict flyio-proxy ACLs to dedicated tag:flyio-target endpoints (#126) 2026-02-08 21:54:18 -08:00
Dockerfile Add Fly.io proxy observability via embedded Alloy (#123) 2026-02-08 10:05:38 -08:00
fly.toml Add Fly.io public reverse proxy for docs.eblu.me (#120) 2026-02-08 02:36:19 -08:00
nginx.conf Fix fly-deploy WARNING by starting nginx before Tailscale (#128) 2026-02-09 07:01:58 -08:00
start.sh Fix fly-deploy WARNING by starting nginx before Tailscale (#128) 2026-02-09 07:01:58 -08:00