CF application fails to start with error "startup health check never passed." -
2025-11-06T08:53:59.978-05:00 [APP/PROC/WEB/0] [OUT] Exit status 143
2025-11-06T08:54:00.108-05:00 [HEALTH/1] [ERR] Timed out after 5m0s (181 attempts) waiting for startup check to succeed: failed to make HTTP request to '/health' on port 8080: received status code 500 in 4ms
2025-11-06T08:54:00.108-05:00 [CELL/1] [ERR] Failed after 5m0.285s: startup health check never passed.
The error "startup health check never passed" indicates that the readiness health-check never passed successfully during start.
An application can configure readiness health-check as described in document: https://techdocs.broadcom.com/us/en/vmware-tanzu/platform/elastic-application-runtime/6-0/eart/deploy-apps-healthchecks.html
Readiness health-checks are performed to validate that app instances are ready to serve requests. The following readiness properties are tunable:
readiness-health-check-type
readiness-health-check-interval
readiness-health-check-http-endpoint
readiness-health-check-invocation-timeout
If a custom HTTP endpoint is defined, then the developer may need to review to determine why that endpoint is never passing the health check.
The CF CLI also has a 5 minute start timeout that it will wait for an application startup as described in: https://techdocs.broadcom.com/us/en/vmware-tanzu/platform/elastic-application-runtime/6-0/eart/deploy-apps-large-app-deploy.html
CF_STARTUP_TIMEOUT: The maximum time in minutes that the cf CLI waits for an app to start
For certain large applications, it may be necessary to increase the timeout (I.E. - CF_STARTUP_TIMEOUT=10 cf push) to allow more time for application to start.