docker compose の depends_on には、起動条件を指定できる。

depends_on:
  service_a:
    condition: service_started

とりうる値は以下の通り。

選択肢 説明
service_started 依存先のサービスが起動したら起動する
service_healthy 依存先のサービスが起動して、なおかつ、healthcheckが通ったら起動する
service_completed_successfully 依存先のサービスが正常終了したら起動する

Docker Compose の depends_on の使い方まとめ | gotohayato.com