Docker无法公开端口5050

我有一个mesos容器运行,容器有端口映射0.0.0.0:32772->5050/tcp 。 如果我运行docker exec CONTAINER_ID "curl 0.0.0.0:5050 ,我可以看到我想要的东西。但是,我不能访问HOST_IP:32772 。我试图在同一个容器中运行nginx,我可以连接到在主机nginx服务器,所以我认为这是mesosconfiguration问题?我该如何解决它?

如果我理解正确,那么您将从Docker容器运行您的Mesos Master。 您应该使用主机networking,而不是桥接networking。

这些设置至less对我来说是有效的:

 docker run \ --name=mesos_master \ --net=host \ -e MESOS_IP={YOUR_HOST_IP} \ -e MESOS_HOSTNAME={YOUR_HOST_IP} \ -e MESOS_CLUSTER=mesos-cluster \ -e MESOS_ZK=zk://{YOUR_ZK_SERVERS}/mesos \ -e MESOS_LOG_DIR=/var/log/mesos/master \ -e MESOS_WORK_DIR=/var/lib/mesos/master \ -e MESOS_QUORUM=2 \ mesosphere/mesos-master:0.27.1-2.0.226.ubuntu1404