Вот мой файл docker-compose.yml
version: '3'
services:
mongodb:
image: hedge-mongo:1.0
container_name: mongodb
ports:
- "27017:27017"
networks:
- appNetwork
service-A:
image: service-A:1.0
container_name: service-A
ports:
- "3030:3030"
networks:
- appNetwork
depends_on:
- mongodb
service-B:
image: service-B:1.0
container_name: service-B
ports:
- "4200:4200"
networks:
- appNetwork
service-C:
image: service-C:1.0
container_name: service-C
ports:
- "8082:8082"
networks:
- appNetwork
networks:
appNetwork:
external: true
В приведенном выше файле service-A и service-C пытаются подключиться к MongoDB
Выпуск:
В вышеупомянутом файле service-A и service-C подключаются к MongoDB до того, как MongoDB запущен
Итак, я хочу запустить service-A и service-C после того, как MongoDB будет полностью запущен.
Я попытался добавить зависит от службы-A и службы-C
service-A:
image: service-A:1.0
container_name: service-A
ports:
- "3030:3030"
networks:
- appNetwork
depends_on:
- mongodb
service-C:
image: service-C:1.0
container_name: service-C
ports:
- "8082:8082"
networks:
- appNetwork
depends_on:
- mongodb
Тем не менее, иногда это не сработало, иногда сработало, так что это ненадежно.
Я хочу убедиться, что мои другие службы работают только после того, как MongoDB работает.