Отображение исходящего IP-адреса контейнера Docker - PullRequest
0 голосов
/ 18 сентября 2018

Я установил Docker на виртуальной частной облачной виртуальной машине (RHEL 7.2) с плавающим IP-адресом, скажем, 10.135.118.6У меня также есть приложение Java Play, которое общается со сторонними серверами баз данных.База данных занесла в белый список плавающий IP-адрес 10.135.118.6, чтобы мое приложение Java Play могло подключиться к нему.Теперь я хочу докеризировать это приложение Java Play, но при этом IP-адреса, которые присваиваются докерным контейнерам, сопоставляются с помощью докерского моста по умолчанию, чьи IP-адреса в конечном итоге оказываются в диапазоне 172.17.0.2 (динамический IP-адрес)Это создает проблему для меня, так как мой новый IP не занесен в белый список на моем сервере базы данных, что в конечном итоге останавливает контейнер.

Можно ли как-нибудь назначить плавающий IP-адрес виртуальной машины моему док-контейнеру вместо IP-адреса сетевого моста?

1 Ответ

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

Для этого:

Сначала вы можете создать собственную сеть докера с пользовательской подсетью (например, JavaPlay_net)

docker network create --subnet=172.32.0.0/16 JavaPlay_net

, а не просто запустить образ (например, изображение Ubuntu)

docker run --net JavaPlay_net --ip 172.32.0.22 -it ubuntu bash

, затем в оболочке Ubuntu

hostname -i

Дополнительно вы можете использовать

  • --hostname для указания имени хоста

  • --add-host для добавления дополнительных записей в / etc / hosts

Ссылка насоздать Docker Network:

https://docs.docker.com/engine/reference/commandline/network_create/#options

...