У меня есть следующий макет проекта в конвейере Azure DevOps.
На размещенном агенте Ubuntu:
(a) Контейнер «A» запускает сервер mssql внутри контейнера докера (mcr.microsoft.com/mssql/server), контейнер открывает демон 1433 для порта
(b) Контейнер «B» содержит все файлы репо, в которых создавалось основное приложение dotnet.
Этот контейнер также содержит файлы миграции базы данных (файлы .cs).
Контейнер B запускается командой run, а точка входа запускает 2 сценария в следующем порядке:
1) Управляет созданием и миграцией базы данных.
2) Запускает проект: внутренний API, который связывается с базой данных
Проект dotnet связывается через эту ConnectionString с базой данных:
"Database": "Server=localhost,1433; Database=MyAwesomeDatabase; User=sa; Password=MyAwesomePassword; MultipleActiveResultSets=True;"
На этом втором шаге контейнер B предоставляет порт 55111 для запуска тестов по API.
В конвейере есть и другие действия, но они актуальны для моей проблемы.
Как я могу правильно связать эти 2 контейнера, чтобы миграция базы данных выполнялась в контейнере A, и API в контейнере B связывался с ним?