Docker 无法公开 mesos 端口 5050
Docker can't expose mesos port 5050
我有一个mesos容器运行ning,容器有端口映射0.0.0.0:32772->5050/tcp
。
如果我运行docker exec CONTAINER_ID "curl 0.0.0.0:5050
,我就能看到我想要的东西。但是,我无法访问 HOST_IP:32772
。我试过 运行 nginx 在同一个容器中,我可以连接到主机中的 nginx 服务器,所以我认为这是 mesos 配置问题?我该如何解决?
如果我没理解错的话,你是 运行 来自 Docker 容器的 Mesos Master。您应该使用主机网络而不是桥接网络。
settings 至少对我有用:
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
我有一个mesos容器运行ning,容器有端口映射0.0.0.0:32772->5050/tcp
。
如果我运行docker exec CONTAINER_ID "curl 0.0.0.0:5050
,我就能看到我想要的东西。但是,我无法访问 HOST_IP:32772
。我试过 运行 nginx 在同一个容器中,我可以连接到主机中的 nginx 服务器,所以我认为这是 mesos 配置问题?我该如何解决?
如果我没理解错的话,你是 运行 来自 Docker 容器的 Mesos Master。您应该使用主机网络而不是桥接网络。
settings 至少对我有用:
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