Возможность подключения из микросервиса на хосте за пределами сети docker-compose

У меня есть docker-compose.yml с несколькими облачными микросервисами Spring, выполняющимися на моей локальной машине. Но я хочу, чтобы микросервис выполнялся на локальном цепочке, а не в докере. Этот микросервис может получить доступ к внешнему IP-адресу докера, но не может получить доступ к внутренним IP-адресам, зарегистрированным «eureka». Я пытаюсь (безуспешно) развернуть докер OpenVPN. ¿Какое лучшее решение для работы только с одним микросервисом, разрабатываемым вне сети докеров?


person Miguel Ángel Hernández Castro    schedule 07.03.2017    source источник


Ответы (1)


К сожалению, docker-compose — это инструмент, который можно использовать только с докером. Если вам просто нужно запустить микросервисное приложение и управлять им, вы можете найти другие решения, такие как супервизор и т. д.

Но если я правильно понял ваш случай, то у вас есть локальная машина (с IP, например, 192.168.100.1) и работающий микросервис в докере (с собственным IP-адресом сети докера, например 172.17.0.2). На локальном компьютере у вас также запущена другая служба, которая прослушивает, например, порт 1234. И вам нужна служба доступа, которая прослушивает 192.168.100.1:1234 из док-контейнера с внутренним IP-адресом 172.17.0.2. В этом случае вам просто нужно запустить свой микросервис в докере и использовать раскрытие порта (https://docs.docker.com/compose/compose-file/#ports). В этом случае вы можете запустить свой док-контейнер, открыть порт 1234, например, для того же порта 1234 на хосте, и все. Весь трафик между 192.168.100.1:1234 и 172.17.0.2:1234 будет прозрачно передаваться, поэтому внутри вашего работающего контейнера вы можете использовать целевой IP-адрес докера (часто это 172.17.0.1, вы можете проверить фактическое значение, запустив ifconfig на вашем локальном компьютере и проверьте сетевой интерфейс docker0) и порт 1234

docker0   Link encap:Ethernet  HWaddr 02:42:B1:B5:7B:53
          inet addr:172.17.0.1  Bcast:0.0.0.0  Mask:255.255.0.0
person Vyacheslav Enis    schedule 07.03.2017