докер днс для множества запущенных контейнеров - PullRequest
0 голосов
/ 26 апреля 2018

У меня есть образ докера, который предоставляет данный сервис для $ PORT.

При запуске нескольких экземпляров этого контейнера с помощью docker-compose я могу получить доступ ко всем их ip изнутри сети с помощью dig (доступны другие инструменты dns).

Как я могу получить это жерезультат от клиента командной строки docker и библиотеки python?

1 Ответ

0 голосов
/ 26 апреля 2018

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

$ docker create network --name test-nwk
$ docker run --name test-service-1 busybox
$ docker run --name test-service-w busybox
$ docker network connect test-nwk test-service-1 --alias test-service
$ docker network connect test-nwk test-service-2 --alias test-service

теперь, когда вы подключаете другой контейнер к этой сети, вы можете видеть их обоих видимыми из домена test-service

$ docker run -it --name test busybox sh
/ # nslookup test-service
Server:    127.0.0.11
Address 1: 127.0.0.11

Name:      test-service
Address 1: 172.18.0.3 test-service-2.test-nwk
Address 2: 172.18.0.2 test-service-1.test-nwk
...