Skip to content

Fix nginx startup failure on IPv4-only hosts#268

Open
upmcplanetracker wants to merge 3 commits into
VERT-sh:mainfrom
upmcplanetracker:main
Open

Fix nginx startup failure on IPv4-only hosts#268
upmcplanetracker wants to merge 3 commits into
VERT-sh:mainfrom
upmcplanetracker:main

Conversation

@upmcplanetracker

Copy link
Copy Markdown

addresses issue #267

The container currently fails to start on systems with IPv6 disabled because nginx currently tries to load up as dual-stack only so hard-crashes when it can't bind to [::]:80. This makes the Vert web page unreachable for anyone running IPv4-only.

what I changed -
I replaced the static nginx/default.conf with a template (nginx/default.conf.template) that uses a placeholder for the IPv6 listen directive
I added a startup script that checks for IPv6 kernel support before nginx starts
If IPv6 is available, the script adds listen [::]:80; to the config, making the page dual stack
If IPv6 is unavailable, the placeholder is removed and nginx starts cleanly on IPv4 only
The script then hands off to the original nginx entrypoint so all other container behavior stays the same

I didn't touch -
nginx/default-ssl.conf this is still IPv4-only. If the project needs dual-stack SSL in the future, the same approach can be applied there (add listen [::]:80; to the HTTP redirect block and listen [::]:443 ssl; to the HTTPS block, with matching placeholder logic in the startup script). I'll leave that to the maintainer's discretion depending on how SSL is deployed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant