docker搭建kafka

1、docker直接拉取kafka和zookeeper的镜像

bash 复制代码
docker pull wurstmeister/kafka
docker pull wurstmeister/zookeeper 

2、首先需要启动zookeeper,如果不先启动,启动kafka没有地方注册消息

bash 复制代码
10.10.0.67内网ip

docker run -it --name zookeeper -p 9140:2181 -d wurstmeister/zookeeper:latest

# 启动kafka容器,注意需要启动三台,注意端口的映射,都是映射到9092
# 第一台
docker run -it --name kafka01 -p 9141:9092 -d -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=10.10.0.67:9140 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://10.10.0.67:9141 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 wurstmeister/kafka:latest
# 第二台
docker run -it --name kafka02 -p 9142:9092 -d -e KAFKA_BROKER_ID=1 -e KAFKA_ZOOKEEPER_CONNECT=10.10.0.67:9140 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://10.10.0.67:9142 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 wurstmeister/kafka:latest
# 第三台
docker run -it --name kafka03 -p 9143:9092 -d -e KAFKA_BROKER_ID=2 -e KAFKA_ZOOKEEPER_CONNECT=10.10.0.67:9140 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://10.10.0.67:9143 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 wurstmeister/kafka:latest

具体命令
随意进入一个容器
下面都是是cd /opt/kafka_2.13-2.8.1/bin运行
cd /opt/kafka_2.13-2.8.1/bin

# 创建topic名称为first,3个分区,1个副本
./kafka-topics.sh --zookeeper 10.10.0.67:9140 --create --topic first --replication-factor 1 --partitions 3

# 查看first此topic信息
./kafka-topics.sh --zookeeper 10.10.0.67:9140 --describe --topic first


# 调用生产者生产消息
./kafka-console-producer.sh --broker-list 10.10.0.67:9141,10.10.0.67:9142,10.10.0.67:9143 --topic first


# 调用消费者消费消息,from-beginning表示读取全部的消息
./kafka-console-consumer.sh --bootstrap-server 10.10.0.67:9141,10.10.0.67:9142,10.10.0.67:9143 --topic first --from-beginning




删除topic
软删除
具体命令./kafka-topic.sh --zookeeper 10.10.0.67:9140 --delete --topic second
真删除
运行后可以看到删除的时候只是被标记为删除marked for deletion并没有真正的删除,如果需要真正的删除,需要再config/server.properties中设置delete.topic.enable=true


修改分区数
./kafka-topics.sh --zookeeper 10.10.0.67:9140 --alter --topic test2 --partitions 3

生产者截图

消费者截图

相关推荐
容器魔方40 分钟前
云容器引擎 CCE 2026-Q2 优化升级:AI 推理负载、备份中心、Gateway API能力全新上线!
人工智能·云原生·容器·开源
无望__wsk41 分钟前
k8s的pod管理
云原生·容器·kubernetes
菜鸟界的菜鸟1 小时前
k8s-Service详解(七)
云原生·容器·kubernetes
wazmlp0018873691 小时前
k8s pod 管理
docker·容器·kubernetes
Dear~yxy1 小时前
k8s的pod
云原生·容器·kubernetes
Dear~yxy1 小时前
k8s中的控制器管理
云原生·容器·kubernetes
江湖有缘2 小时前
Docker开源项目: 基于Ubuntu系统部署ExpenseOwl自托管记账工具实战教程
ubuntu·docker·开源
qizhideyu3 小时前
kubernetes中的pod管理
云原生·容器·kubernetes
lxw20230271163 小时前
k8s的pod管理
linux·容器·kubernetes
Yiiz.3 小时前
Kubernetes Pod 与控制器知识点
云原生·容器·kubernetes