Macos 如何在Mac上使用Docker进行调试
我让卡夫卡在我的Maac上的docker容器中运行。我是这样开始的Macos 如何在Mac上使用Docker进行调试,macos,docker,Macos,Docker,我让卡夫卡在我的Maac上的docker容器中运行。我是这样开始的 #Start Zookeeper docker run -d -p 2181:2181 --net myNet --name myZookeeper myRegistry/kafka:0.10.1.0 zookeeper-server-start #Start Kafka export KAFKA_ADVERTISE_HOSTNAME="my.ip.add" docker run -d --net br-advisor-
#Start Zookeeper
docker run -d -p 2181:2181 --net myNet --name myZookeeper myRegistry/kafka:0.10.1.0 zookeeper-server-start
#Start Kafka
export KAFKA_ADVERTISE_HOSTNAME="my.ip.add"
docker run -d --net br-advisor-nw --name whi-kafka -p 9092:9092 --link myZookeeper:myZookeeper myRegistry/kafka:0.10.1.0 kafka-server-start --override zookeeper.connect=${KAFKA_ADVERTISE_HOSTNAME}:2181 --override broker.id=0 --override advertised.host.name=${KAFKA_ADVERTISE_HOSTNAME} --override group.max.session.timeout.ms=3600000 --override auto.create.topics.enable=false --override replica.fetch.max.bytes=10485760 --override message.max.bytes=10485760 --override port=9092 --override listeners=PLAINTEXT://:9092
我可以看到容器在Docker中运行,我可以很好地通过ssh连接到容器中
现在,我正在尝试从我的主机连接到容器
kafka-topics.sh --list --zookeeper my.ip.add:2181
但这无法连接。我也试过了
kafka-topics.sh --list --zookeeper 0.0.0.0:2181
kafka-topics.sh --list --zookeeper 127.0.0.0:2181
kafka-topics.sh --list --zookeeper localhost:2181
但他们都失败了。我还试图从中获取容器的IP
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' myZookeeper
给予
ip.of.container
但是
也失败了
我有没有办法连接到docker容器中运行的kafka/zookeeper?
另外,虽然我使用的是
-p
标志,但两个端口都没有暴露出来。为什么会这样?看起来你在Mac电脑上使用docker工具箱/docker机器来运行docker。这在幕后创建了一个Linux虚拟机,但没有xhyve版本中隐藏虚拟机的一些特性。您将看到它在virutalbox中运行,并在连接到容器所需的IP地址中看到它
您应该能够运行:
kafka-topics.sh --list --zookeeper 192.168.99.100:2181
要在将来查找您的IP,您可以使用
docker machine IP
。如果您安装的Mac足够新,您可能需要升级到使用xhyve的较新版本。容器是否正在运行和侦听(docker ps
和docker logs
)?是否配置为在0.0.0.0(而不是127.0.0.1)上侦听?echo$DOCKER\u主机显示了什么?显示了tcp://192.168.99.100:2376
kafka-topics.sh --list --zookeeper 192.168.99.100:2181