[ https://issues.apache.org/jira/browse/KAFKA-17953?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Federico Valeri updated KAFKA-17953: ------------------------------------ Description: When running the docker image with an env var, you get the following error: {code} $ docker run --rm -it -p 9092:9092 \ -e KAFKA_NUM_NETWORK_THREADS=4 \ apache/kafka:3.8.1 ... Exception in thread "main" org.apache.kafka.common.config.ConfigException: Missing required configuration `zookeeper.connect` which has no default value. at kafka.server.KafkaConfig.validateValues(KafkaConfig.scala:1232) at kafka.server.KafkaConfig.<init>(KafkaConfig.scala:1223) at kafka.server.KafkaConfig.<init>(KafkaConfig.scala:545) at kafka.tools.StorageTool$.$anonfun$execute$1(StorageTool.scala:72) at scala.Option.flatMap(Option.scala:283) at kafka.tools.StorageTool$.execute(StorageTool.scala:72) at kafka.tools.StorageTool$.main(StorageTool.scala:53) at kafka.docker.KafkaDockerWrapper$.main(KafkaDockerWrapper.scala:48) at kafka.docker.KafkaDockerWrapper.main(KafkaDockerWrapper.scala) {code} In this case, the KafkaDockerWrapper setup does not copy the default KRaft config before appending the user env vars. Basically, it expects the whole configuration as env vars, rather than appending to default KRaft config. was: When running the docker image with an env var, you get the following error: {code} docker run --rm -it -p 9092:9092 \ -e KAFKA_NUM_NETWORK_THREADS=4 \ apache/kafka:3.8.1 ... Exception in thread "main" org.apache.kafka.common.config.ConfigException: Missing required configuration `zookeeper.connect` which has no default value. at kafka.server.KafkaConfig.validateValues(KafkaConfig.scala:1232) at kafka.server.KafkaConfig.<init>(KafkaConfig.scala:1223) at kafka.server.KafkaConfig.<init>(KafkaConfig.scala:545) at kafka.tools.StorageTool$.$anonfun$execute$1(StorageTool.scala:72) at scala.Option.flatMap(Option.scala:283) at kafka.tools.StorageTool$.execute(StorageTool.scala:72) at kafka.tools.StorageTool$.main(StorageTool.scala:53) at kafka.docker.KafkaDockerWrapper$.main(KafkaDockerWrapper.scala:48) at kafka.docker.KafkaDockerWrapper.main(KafkaDockerWrapper.scala) {code} In this case, the KafkaDockerWrapper setup does not copy the default KRaft config before appending the user env vars. Basically, it expects the whole configuration as env vars, rather than appending to default KRaft config. > Docker image fails when setting env vars > ---------------------------------------- > > Key: KAFKA-17953 > URL: https://issues.apache.org/jira/browse/KAFKA-17953 > Project: Kafka > Issue Type: Bug > Reporter: Federico Valeri > Assignee: Federico Valeri > Priority: Major > > When running the docker image with an env var, you get the following error: > {code} > $ docker run --rm -it -p 9092:9092 \ > -e KAFKA_NUM_NETWORK_THREADS=4 \ > apache/kafka:3.8.1 > ... > Exception in thread "main" org.apache.kafka.common.config.ConfigException: > Missing required configuration `zookeeper.connect` which has no default > value. at kafka.server.KafkaConfig.validateValues(KafkaConfig.scala:1232) at > kafka.server.KafkaConfig.<init>(KafkaConfig.scala:1223) at > kafka.server.KafkaConfig.<init>(KafkaConfig.scala:545) at > kafka.tools.StorageTool$.$anonfun$execute$1(StorageTool.scala:72) at > scala.Option.flatMap(Option.scala:283) at > kafka.tools.StorageTool$.execute(StorageTool.scala:72) at > kafka.tools.StorageTool$.main(StorageTool.scala:53) at > kafka.docker.KafkaDockerWrapper$.main(KafkaDockerWrapper.scala:48) at > kafka.docker.KafkaDockerWrapper.main(KafkaDockerWrapper.scala) > {code} > In this case, the KafkaDockerWrapper setup does not copy the default KRaft > config before appending the user env vars. Basically, it expects the whole > configuration as env vars, rather than appending to default KRaft config. -- This message was sent by Atlassian Jira (v8.20.10#820010)