keon94 commented on issue #2454:
URL: 
https://github.com/apache/incubator-devlake/issues/2454#issuecomment-1179287550

   The ordering is technically fine (depends_on field in the compose file 
manages the ordering). The problem is, each container has a bootstrap process 
that takes some time to complete (e.g. mysql), so just because it has started 
it doesn't mean it's ready. In this case devlake is trying to talk to mysql 
before it is fully ready, and that throws an error.
   
   With docker-compose v2 one would define healthchecks in the compose file and 
have the containers wait using conditions until their dependencies are healthy 
before boostrapping. v3 removed this feature as far as I am aware.
   
   So our options are:
   1. Use the v2 docker-compose spec, and use healthchecks and conditions in 
the compose file
   2. Enhance the devlake service logic to retry DB connectivity for a while
   3. Apparently the more recent compose versions allow backwards portability 
as far as support for conditions go [see this 
discussion](https://github.com/peter-evans/docker-compose-healthcheck/issues/3).
 Maybe investigate this and see if it'll work.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to