mirror of
https://github.com/bytedance/deer-flow.git
synced 2026-10-26 21:26:39 +00:00
* fix(docker): strip the IPv6 listen in the production nginx launcher too docker/nginx/nginx.conf listens on 2026 and [::]:2026. On a host booted with ipv6.disable=1 (or a kernel without IPv6) nginx refuses to start — socket() [::]:2026 failed (97: Address family not supported by protocol) — so the container restart-loops under `restart: unless-stopped` and `make up` waits on a readiness probe that never turns healthy. #2027 added a launcher guard that deletes the IPv6 listen when /proc/net/if_inet6 is absent, but only to docker-compose-dev.yaml; the Helm chart mirrors it; docker-compose.yaml — the file behind `make up` and scripts/deploy.sh — still ran the bare copy-and-start command. Give the production nginx service the same launcher as the dev file: `set -e`, copy the template, guard, and `exec nginx` so nginx is PID 1 and receives docker stop's signal directly. The new test pins the guard in all three launchers (prod, dev, Helm), requires the three sed patterns to be identical so they cannot drift again, checks the guard edits the file nginx actually loads, and applies the pattern to the shipped compose and Helm configs to confirm it removes only the IPv6 listen. Verified on nginx:alpine: BusyBox sed strips exactly that line and `nginx -t` accepts the result; the rendered production launcher runs unchanged when IPv6 is present. * docs(changelog): reference #5900 in the nginx IPv6 guard entries