在 docker 容器中运行 mesos-master - 无法从其他主机看到容器 IP

在 docker 容器中运行 mesos-master - 无法从其他主机看到容器 IP

我有个问题。

我正在将 mesos-master 作为 docker 容器运行。当我启动它时,它会将其 IP 写入 zookeeper,因此在同一主机上运行的任何从属都可以连接到 mesos master。无法从任何其他主机访问 Mesos-master。Mesos-master 端口可通过 docker port exposed 在主机公共 IP 上使用 我无法在具有主机公共 IP 的容器中运行 mesos-master,因为它无法监听它没有的 ip

有什么方法可以传播到 zookeeper --ip=(容器本地 IP) 和 --public-ip=(将传播到 zookeeper 的主机 IP)

我想到的一个解决方案是使用 CoreOS 人员在此处描述的一些代理:http://coreos.com/blog/docker-dynamic-ambassador-powered-by-etcd/ 但我想通过更改 zookeeper 中的 IP 来优雅地解决这个问题。

我已将 Docker 和单元文件保存在这里:https://github.com/veverjak/coreos-mesos-marathon

有人尝试过这个吗?

答案1

我发现的最简单的解决方案是在容器中使用主机 IP 地址。

文档在这里

我已经这样做了

相关内容