gpt4 book ai didi

macos - 如何在Mac上使用Docker进行调试

转载 作者:行者123 更新时间:2023-12-02 19:36:34 24 4
gpt4 key购买 nike

我在Maac的docker容器中运行了kafka。这是我的开始方式

#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


kafka-topics.sh --list --zookeeper ip.of.container:2181

也失败了。

我有什么方法可以连接到在docker容器中运行的kafka / zookeeper?

另外,尽管我使用的是 -p标志,但似乎两个端口都没有暴露。这是为什么?

最佳答案

看来您在Mac上使用docker-toolbox / docker-machine运行docker。这将在幕后创建一个Linux VM,但不具有隐藏该VM的xhyve版本的某些功能。您会看到它在virutalbox中运行,并且会在用于连接到容器的IP地址中看到它。

您应该能够运行:

kafka-topics.sh --list --zookeeper 192.168.99.100:2181

要将来查找您的IP,可以使用 docker-machine ip。如果您的Mac安装足够新,则您可能需要升级到使用xhyve的较新版本。

关于macos - 如何在Mac上使用Docker进行调试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44437452/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com