基于docker部署kafka apache/kafka:latest 出现的问题

综述:这篇文章会很短,主要是对一些docker部署apache/kafka:latest 出现的问题提出解决方案。因为自己解决,会需要很久,所以写此文章,仅供大家参考。请注意本文章发布的时间和对应kafka的版本。

启动容器的命令:

docker run -d -p 9092:9092

--name kafka1

--restart always

-v /data/docker_kafka/docker:/mnt/shared/config

-v /data/docker_kafka/data:/var/lib/kafka/data

apache/kafka:latest

1.docker启动kafka爆异常: 

Exception in thread "main" java.lang.IllegalArgumentException: requirement failed: advertised.listeners cannot use the nonroutable meta-address 0.0.0.0. Use a routable IP address. at scala.Predef$.require(Predef.scala:337) at kafka.server.KafkaConfig

原因:listeners或advertised.listenners配置异常

解决方案:


listeners=PLAINTEXT://:9092,CONTROLLER://:9093

# 我们要通过 linux 访问 docker 容器中的 kafka 所以把 IP 配置成 linux 的 IP
advertised.listeners=PLAINTEXT://192.168.200.128:9092

注意:新版kafka中listeners的配置可能不能写listeners=PLAINTEXT://0.0.0.0:9092,CONTROLLER://0.0.0.0:9093

只能按照图中的情况修改。

2.挂载data目录没有写入文件的权限: Formatting metadata directory /var/lib/kafka/data with metadata.version 3.9-IV0. Error while writing meta.properties file /var/lib/kafka/data: java.nio.file.AccessDeniedException: /var/lib/kafka/data/bootstrap.checkpoint.tmp

解决方案:

问Ai,执行代码

sudo chown -R 1000:1000 /data/docker_kafka/data
sudo chmod -R 755 /data/docker_kafka/data

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值