使用“容器IP”连接到docker集装箱
我在mac上运行docker。 我想连接到docker容器使用其IP(不是虚拟机器的IP)。 原因是spark驱动注册了自己的容器ip“172.17.0.2”,并且从mac运行的客户端试图连接到这个地址。 有没有办法从macbook连接到172.17.0.2与IP 192.168.99.1。
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
任何帮助表示赞赏。 谢谢Ravi R
看看Docker Networks 。 您在容器中看到的IP是私有IP是泊坞窗networking。
唯一(好)的方法来访问容器来发布容器的端口 ,并通过VM-IP:published-container-port访问它。 或者,您可以使用选项--net=host
直接使用--net=host
hosts netwok接口,但不build议这样做。
你正在使用哪个Docker应用程序? 与Docker for Mac beta的AFAIK你现在不能这样做:
不幸的是,由于OSX的限制,我们无法将stream量路由到容器,并且从容器回到主机。
如果您希望行为与“本地”Docker更加一致,您可能需要探索一个Vagrant主机或类似的解决scheme。
- docker工人支持所有types的容器内的数据
- 运行火花时没有输出NetworkWordCount示例
- 无法在Docker容器中启动Spark
- rg.apache.spark.SparkException:主要url无效:spark://tasks.501393358-spark-master:7077
- 集群模式下的Apache Storm FileNotFoundException
- 如何连接火花(在远程的CDH-5.8dockervms)? 我需要在容器上映射端口7077吗?
- Docker / PHP5 / Apache中的PHP文件正在输出源代码,不执行PHP
- 基于Docker的环境configuration中的mod_wsgi
- 使用Apache Camel在Docker容器中调用服务时的响应时间很长