Parent: #1936
Problem
The ollama service in docker-compose.yml has no healthcheck: block, so no dependent service can gate on it via condition: service_healthy, unlike every other optional backend (qdrant, postgres, tempo, the backup-exporter all have one).
Operators following the in-file instructions (--profile ollama then set AI_PROVIDER=ollama/OLLAMA_AI_BASE_URL in .env) get no compose-level signal that Ollama has finished starting and is accepting API calls before the app starts using it; first review requests after a fresh up can hit connection-refused with only the app's own retry/error-handling as a safety net, and there is no way to add a depends_on: ollama: condition: service_healthy gate even if desired later.
Fix
Add a healthcheck hitting Ollama's /api/tags endpoint (the image ships the ollama CLI, so CMD ["ollama", "list"] works without needing curl, or use a bash /dev/tcp probe like the existing qdrant healthcheck) so the service's state is visible via docker compose ps and can eventually be depended on.
Verification
Parent: #1936
Problem
The
ollamaservice indocker-compose.ymlhas nohealthcheck:block, so no dependent service can gate on it viacondition: service_healthy, unlike every other optional backend (qdrant,postgres,tempo, the backup-exporter all have one).Operators following the in-file instructions (
--profile ollamathen setAI_PROVIDER=ollama/OLLAMA_AI_BASE_URLin.env) get no compose-level signal that Ollama has finished starting and is accepting API calls before the app starts using it; first review requests after a freshupcan hit connection-refused with only the app's own retry/error-handling as a safety net, and there is no way to add adepends_on: ollama: condition: service_healthygate even if desired later.Fix
Add a healthcheck hitting Ollama's
/api/tagsendpoint (the image ships theollamaCLI, soCMD ["ollama", "list"]works without needing curl, or use a bash/dev/tcpprobe like the existingqdranthealthcheck) so the service's state is visible viadocker compose psand can eventually be depended on.Verification
ollamaservice block againstdocker-compose.yml(line numbers may have shifted).docker compose --profile ollama psshows a health status for ollama, not "no healthcheck".