Docker 在mac上为zookeeper解除分配端口

Docker 在mac上为zookeeper解除分配端口,docker,apache-kafka,port,apache-zookeeper,Docker,Apache Kafka,Port,Apache Zookeeper,我知道这以前可能会问。但在过去的两个小时里,我一直在努力解决这个问题 我正在学习有关apache kafka的教程,并尝试运行以下命令来运行docker容器: docker run --rm -p 2181:2181 -p 3030:3030 -p 8081-8083:8081-8083 -p 9581-9585:9581-9585 -p 9092:9092 -e ADV_HOST=192.168.99.100 landoop/fast-data-dev:latest 然

我知道这以前可能会问。但在过去的两个小时里,我一直在努力解决这个问题

我正在学习有关apache kafka的教程,并尝试运行以下命令来运行docker容器:

docker run --rm -p 2181:2181 -p 3030:3030 -p 8081-8083:8081-8083 -p 9581-9585:9581-9585 -p 9092:9092 -e ADV_HOST=192.168.99.100            landoop/fast-data-dev:latest
然而,我得到了这个错误:

ocker: Error response from daemon: driver failed programming external connectivity on endpoint friendly_austin
 (7fe43e4a4081d4ac072a8fbb9582b9456eb71e488fe9a21c358a916061709005): Error starting userland proxy: Bind for 0.0.0.0:2181 failed: port is already allocated.
我知道这与分配的端口2181有关

所以我跑了

lsof -i TCP:2181
我得到了以下pid:

COMMAND   PID  USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME
java    79831 omkar   27u  IPv6 0xa390d90220637c69      0t0  TCP *:eforward (LISTEN)
但是,我不明白如何释放或解除分配此端口?我需要这样做吗


非常感谢您的帮助。

这是一个docker错误-您无法映射容器的端口2181,因为您的主机已经在使用它

只需修改此绑定:

docker run --rm -p 2182:2181 -p 3030:3030 -p 8081-8083:8081-8083 -p 9581-9585:9581-9585 -p 9092:9092 -e ADV_HOST=192.168.99.100            landoop/fast-data-dev:latest
注意-p2182:2181

我用了2182,你可以用另一个 如果您需要使用zookeeper地址,请拨打:2182