综述:这篇文章会很短,主要是对一些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

2572

被折叠的 条评论
为什么被折叠?



