Add custom Nginx entrypoint to wait for Wazuh upstreams before start #2050
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR introduces a custom Nginx startup script that ensures Wazuh upstream nodes are reachable before Nginx begins serving traffic.
The change improves reliability during multi-node deployments, avoiding potential startup race conditions between Nginx and Wazuh services.
Changes
Added
nginx-entrypoint-check.shscript:Waits for connectivity to:
wazuh-master:1514wazuh-worker:1514Starts Nginx only after both are reachable.
Updated multi-node/docker-compose.yml:
Mounted the script into the Nginx container.
Added runtime installation of netcat-openbsd (required for network checks).
Adjusted container command to execute the custom entrypoint.
Future Improvements
I can move the netcat-openbsd installation to a build-time step in a custom Nginx image for faster and more deterministic startup. Additionally, replacing apt update at runtime with a prebuilt image for production use.