docker-apache/kafka:4.1.2部暑 kafka-console-producer/kafka-console-consumer 20260425
1、pull
docker pull apache/kafka:4.1.2 # 稳定版
Kafka 4.1.2 不需要 ZK,直接 KRaft 模式

2、带持久化(数据不丢)
单节点(宿主机ip:192.168.91.164)
docker run -d --name kafka -p 9092:9092 -p 9093:9093 -v /var/lib/kafka/data:/opt/kafka/data -e KAFKA_NODE_ID=1 -e KAFKA_PROCESS_ROLES=controller,broker -e KAFKA_CONTROLLER_QUORUM_VOTERS=1@127.0.0.1:9093 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092,CONTROLLER://0.0.0.0:9093 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.91.164:9092 -e KAFKA_CONTROLLER_LISTENER_NAMES=CONTROLLER -e KAFKA_LISTENER_SECURITY_PROTOCOL_MAP=CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT -e KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR=1 apache/kafka:4.1.2

docker run -d \
--name kafka \
-p 9092:9092 \
-p 9093:9093 \
-v /var/lib/kafka/data:/opt/kafka/data \ # 数据持久化:宿主机目录 → 容器Kafka数据目录
-e KAFKA_NODE_ID=1 \ # Kafka节点ID(单节点1即可)
-e KAFKA_PROCESS_ROLES=controller,broker \ # 节点角色:既是控制器又是代理(单节点必须这样)
-e KAFKA_CONTROLLER_QUORUM_VOTERS=1@127.0.0.1:9093 \ # 控制器投票节点配置
-e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092,CONTROLLER://0.0.0.0:9093 \ # 容器内部监听地址
-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.91.164:9092 \ # 对外暴露地址(宿主机IP)
-e KAFKA_CONTROLLER_LISTENER_NAMES=CONTROLLER \ # 指定控制器使用的监听器名称
-e KAFKA_LISTENER_SECURITY_PROTOCOL_MAP=CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT \ # 监听器协议映射(无加密)
-e KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR=1 \ # 位移主题副本数(单节点1)
apache/kafka:4.1.2

3、
3.1
./kafka-topics.sh --bootstrap-server localhost:9092 --list
# 进入容器
docker exec -it kafka bash
# 进入kafka/bin/
cd /opt/kafka/bin/
运行
./kafka-topics.sh --bootstrap-server localhost:9092 --list

3.2
./kafka-consumer-groups.sh --list --bootstrap-server localhost:9092

4、topic01 kafka-console-producer/kafka-console-consumer
4.1 生产 ./kafka-console-producer.sh
进行/opt/kafka/bin$
./kafka-console-producer.sh --topic topic01 --bootstrap-server localhost:9092

4.2 消费 ./kafka-console-consumer.sh
进行/opt/kafka/bin$
./kafka-console-consumer.sh --topic topic01 --bootstrap-server localhost:9092 --from-beginning


5、offsetExplorer客户端
kafka:4.1.2 ZK不需要填写


topics01 加数据测试



浙公网安备 33010602011771号