繁体   English   中英

来自docker-compose网络之外的主机上微服务的连接

[英]Connectivity from microservice on host out of docker-compose network

我有一个docker-compose.yml,在本地计算机上执行了几个春季云微服务。 但是我想在本地machain上执行微服务,而不是在docker中执行。 该微服务可以访问外部docker ip,但不能访问“ eureka”已注册的内部ip。 我尝试(未成功)部署OpenVPN泊坞窗。 ¿在docker网络之外进行开发时,仅使用一种微服务的更好解决方案是什么?

不幸的是,docker-compose是只能与docker一起使用的工具。 如果您只需要运行和管理微服务应用程序,则可以搜索其他解决方案,例如主管等。

但是,如果我正确理解了您的情况,那么您就有本地计算机(例如IP地址为192.168.100.1)和正在docker中运行的微服务(具有自己的docker网络IP,例如172.17.0.2)。 在本地计算机上,您还运行了另一个服务,例如侦听端口1234。并且您需要访问服务,该服务从具有内部IP 172.17.0.2的Docker容器中侦听192.168.100.1:1234。 在这种情况下,您只需要在docker中启动微服务并使用端口暴露( https://docs.docker.com/compose/compose-file/#ports )。 在这种情况下,您可以运行Docker容器,例如将端口1234暴露给主机上的同一端口1234,仅此而已。 192.168.100.1:1234和172.17.0.2:1234之间的所有流量都将透明地传递,因此从您正在运行的容器内部,您可以使用docker的目标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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM