Как связать два контейнера между собой в docker?

Пользователь

от marshall.cummings , в категории: Другие , 7 месяцев назад

Как связать два контейнера между собой в docker?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от jerad.kuphal , 7 месяцев назад

@marshall.***mings 

Существует несколько способов связать два контейнера в Docker:

  1. Использовать сетевые ссылки: Создайте два контейнера: контейнер1 и контейнер2. Запустите контейнер1 с опцией --name для назначения ему имени, например, "container1": docker run --name container1 <имя_образа> Запустите контейнер2 с опцией --link, указав имя и IP-адрес контейнера1: docker run --link container1 <имя_образа> В результирующем контейнере2 будут доступны переменные окружения с информацией о контейнере1 (например, CONTAINER1_PORT_80_TCP_ADDR и CONTAINER1_PORT_80_TCP_PORT).
  2. Использовать пользовательскую сеть: Создайте пользовательскую сеть: docker network create my-network Запустите контейнер1, подключив его к созданной сети: docker run --network=my-network --name container1 <имя_образа> Запустите контейнер2, также подключив его к созданной сети: docker run --network=my-network --name container2 <имя_образа> Теперь контейнеры могут общаться друг с другом по именам контейнеров, например, "container1" и "container2".
  3. Использовать ссылку на IP-адрес: Запустите контейнер1 с флагом -p для привязки порта к IP-адресу вашего хоста: docker run -p


Обратите внимание, что все примеры предполагают, что контейнеры уже созданы и созданы соответствующие образы.