Idea中使用kafka插件连接不上虚拟机中docker启动的kafka
·
提要
在虚拟机(centos9)中用docker部署并启动kafka后,可以在命令窗口来操作kafka,但是外界却连不上。
方案
1、先启动docker,并在docker中启动kafka
2、复制server.properties到宿主机
3、修改文件
4、重启kafka
细节
1、启动docker
systemctl start docker
启动kafka容器
docker run -p 9092:9092 apache/kafka:3.7.0
这个时候kafka就已经启动起来了,但是外界连接不上,比如用IDEA中的插件

2、找到docker中kafka的server.properties文件并复制到本地
查看容器ID
docker run -p 9092:9092 apache/kafka:3.7.0
版本号修改为你的。
docker exec -it 容器id /bin/bash
找到你的server.properties,一般在/etc/kafka/docker/server.properties(docker容器中)
复制到宿主机中
docker cp 容器ID:/etc/kafka/docker/server.properties /opt/kafka/docker
3、修改文件内容,修改listeners(端口号前加0.0.0.0)和advertised.listeners(端口号中加宿主机ip)
vim server.properties

4、重启kafka
用修改后的配置文件映射启动。
docker run --volume /opt/kafka/docker:/mnt/shared/config apache/kafka:3.7.0

这里有个小问题,有可能由于docker网络原因依旧连不上。
那就直接让docker使用宿主机的网络
docker run --network host --volume /opt/kafka/docker:/mnt/shared/config apache/kafka:3.7.0
到这里外部就能够连接啦。
总结
修改配置文件,文件映射,网络问题。
更多推荐


所有评论(0)