Как контейнеризовать сервисы, зависящие от базы данных? - PullRequest
0 голосов
/ 18 ноября 2018

Пример: я получил микросервис «Альфа», который обычно подключается к «* 1002» * Сервис зависит от этой базы данных.Теперь я хочу контейнировать и базу данных, и сервис.Конечно, адрес базы данных меняется, так что я даже не могу построить образ для сервиса «Альфа».

Теперь мне интересно, как справиться с этой проблемой?Должен быть более простой способ, чем ожидание запуска контейнера базы данных, чтобы проверить его ip: порт.Решают ли такие инструменты, как kubernetes, эту проблему?

1 Ответ

0 голосов
/ 18 ноября 2018

Docker поставляется с механизмом service discovery (это основной термин для того, как службы знают, как общаться друг с другом), контейнеры могут быть связаны вместе, и вы можете использовать DNS для общения с ними.

Например, ваша альфа-служба может быть связана с вашей базой данных и подключаться к db:3306, и Docker установит необходимые /etc/hosts записи в alpha, чтобы он мог преобразовать db в IP.

...