Как дождаться завершения миграции базы данных перед запуском тестов в docker-compose.yml - PullRequest
0 голосов
/ 05 июня 2019

В файле docker-compose.yml у меня есть 3 службы.Первый сервис используется для раскрутки базы данных MySQL.Второй сервис используется для запуска нескольких миграций базы данных для создания таблиц и начальных данных в базе данных MySQL, созданной в первом сервисе.Третий сервис используется для запуска некоторых модульных тестов node.js, которым требуется база данных MySQL.Проблема в том, что мне нужно запустить модульные тесты только после завершения миграции базы данных.Но я не знаю, как это сделать.

Я пытался использовать опцию конфигурации depen_on в сервисе модульных тестов, чтобы она зависела от сервиса переноса базы данных, но, согласно документации Docker, depen_on гарантирует только то, чтослужба модульных тестов запускается после запуска службы миграции баз данных.

1 Ответ

0 голосов
/ 05 июня 2019

Опция disabled_on позволяет вам контролировать только порядок запуска.
Чтобы проверить готовность , вам необходимо проверить это программно. Вы можете либо написать скрипт-обертку, который проверяет, что миграция выполнена, либо использовать существующие инструменты, такие как wait-for-it

Более подробную информацию можно найти в официальной документации

.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...