docker beta on osx dns容器之间的链接不可用

昨天我为osx安装了docker-beata( https://beta.docker.com/ )。 到目前为止,这似乎很好,但容器之间定义的链接仍然不能工作,例如他们各自的DNS名称似乎没有解决。

我怎样才能改变这个使得在docker-beta(osx / windows)主机上的链接容器的dns名称可用?

links: - someName 

一个pinata list返回以下内容,并且对unknown host执行pingdocker.local失败

 🐳 hostname = docker Hostname of the virtual machine endpoint, where container ports will be exposed if using nat networking. Access it via 'docker.local'. 🐳 hypervisor = native (memory=8, ncpu=4) The Docker.app includes embedded hypervisors that run the virtual machines that power the containers. This setting allows you to control which the default one used for Linux is. ▸ native: a version of the xhyve hypervisor that uses the MacOSX Hypervisor.framework to run container VMs. Parameters: memory (VM memory in gigabytes), ncpu (vCPUs) 🐳 network = hostnet (docker-ipv4=192.168.65.2, host-ipv4=192.168.65.1) Controls how local containers can access the external network via the MacOS X host. This includes outbound traffic as well as publishing ports for external access to the local containers. ▸ hostnet: a mode that helps if you are using a VPN that restricts connectivity. Activating this mode will proxy container network packets via the Docker.app process as host socket traffic. Parameters: docker-ipv4 (docker node), host-ipv4 (host node) ▸ nat: a mode that uses the MacOS X vmnet.framework to route container traffic to the host network via a NAT. 🐳 filesystem = osxfs Controls the mode by which files from the MacOS X host and the container filesystem are shared with each other. ▸ osxfs: a FUSE-based filesystem that bidirectionally forwards OSX filesystem events into the container. 🐳 native/port-forwarding = true Expose container ports on the Mac, rather than the VM ▸ true: Container ports will be exposed on the Mac ▸ false: Container ports will be exposed on the VM 🐳 daemon = run 'pinata get daemon' or 'pinata set daemon [@file|-]> JSON configuration of the local Docker daemon. Configure any custom options you need as documented in: https://docs.docker.com/engine/reference/commandline/daemon/. Set it directly, or a @file or - for stdin. 

在这里与旧dockerhttps://github.com/databricks/spark-integration-tests描述

使用boot2docker时,Docker容器将在VirtualBox虚拟机内部运行,这为Mac主机和容器之间的通信带来了一些困难。 按照这些说明来解决这些问题:

networking访问:我们的testing目前从容器外部运行SparkContext,所以我们需要主机< – >容器和容器< – >容器networking正常工作。 由于boot2docker在VirtualBox中的NAT后面运行容器,这一点变得复杂了。

一种解决方法是添加一个路由表项,将stream量路由到容器VirtualBox虚拟机的IP地址:

sudo route -n add 172.17.0.0/16 boot2docker ip如果您重新启动计算机或为VirtualBox VM分配新IP,则必须重新运行此命令。

但是这不再起作用,因为docker-beata已经在hostnet中运行了

我也有这个问题,它似乎是禁用OS X防火墙后修复

我可以发誓我看到一些可执行文件的白名单,而不是禁用防火墙,但我找不到它…