我在 mac 上运行 docker。我想使用 docker 容器的 ip (不是虚拟机的 ip)连接到它。原因是 Spark 驱动程序将自身注册到容器 IP“172.17.0.2”,并且从 mac 运行的客户端尝试连接到该地址。有没有办法从 macbook 使用 ip 192.168.99.1 连接到 172.17.0.2。
ravis-MacBook-Pro:datadir raviramadoss$ ifconfig | grep inet
inet6 ::1 prefixlen 128
inet 127.0.0.1 netmask 0xff000000
inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1
inet6 fe80::22c9:d0ff:fec3:ab3b%en1 prefixlen 64 scopeid 0x5
inet 172.20.10.2 netmask 0xfffffff0 broadcast 172.20.10.15
inet6 fe80::2c59:11ff:fe77:f5a6%awdl0 prefixlen 64 scopeid 0x9
inet6 fe80::8f9:68c0:9430:41eb%utun0 prefixlen 64 scopeid 0xb
inet6 fdd6:aa86:393a:d244:8f9:68c0:9430:41eb prefixlen 64
inet 192.168.99.1 netmask 0xffffff00 broadcast 192.168.99.255
inet6 fe80::4fc0:193a:6763:2e97%utun1 prefixlen 64 scooped 0x14
虚拟盒子ip
ravis-MacBook-Pro:sbin raviramadoss$ docker-machine ip
192.168.99.100
容器
[raviramadoss@karaba logs]$ ifconfig | grep inet
inet addr:172.17.0.2 Bcast:0.0.0.0 Mask:255.255.0.0
inet6 addr: fe80::42:acff:fe11:2/64 Scope:Link
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
任何帮助表示赞赏。
谢谢
拉维·R
Look at 码头网络 https://docs.docker.com/engine/userguide/networking/dockernetworks/。您在容器内看到的 IP 是 docker 网络内的私有 IP。
访问容器的唯一(好)方法发布端口 https://docs.docker.com/engine/reference/commandline/run/#/publish-or-expose-port-p-expose容器的名称并通过 VM-IP:published-container-port 访问它。或者,您可以使用该选项--net=host
直接使用 docker 主机网络接口,但不建议这样做。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)