Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos 如何在Mac上使用Docker进行调试_Macos_Docker - Fatal编程技术网

Macos 如何在Mac上使用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-

我让卡夫卡在我的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-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