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

生产者截图

消费者截图

相关推荐
赵民勇8 小时前
fuse-overlayfs命令详解
linux·容器
JAVA社区11 小时前
Java高级全套教程(十一)—— Kubernetes 超详细企业级实战详解
java·运维·微服务·容器·面试·kubernetes
陈陈CHENCHEN15 小时前
【Kubernetes】Kubeadm 搭建生产级 K8s 高可用集群
云原生·容器·kubernetes
杰克逊的日记16 小时前
K8s+GPU+大模型运维主要技术点
运维·容器·kubernetes
一个向上的运维者17 小时前
Docker 自定义网络中容器无法通过宿主机 IP 访问服务的完整排障记录
网络·tcp/ip·docker
ClouGence18 小时前
CloudDM 3.1.0 发布:初始化、驱动管理与升级体验全面优化
docker·开源·数据库管理·企业开发·数据库工具·数据库运维
PascalMing18 小时前
K8s集群安装部署完整指南(Ubuntu24.04+K8s1.28)
云原生·容器·kubernetes
IT策士18 小时前
第 34 篇 k8s之存储基础:emptyDir 与 hostPath
云原生·容器·kubernetes
zandy101119 小时前
Hermes Agent 安装与配置全流程(2026年6月最新版)
docker·agent·安装教程·kimi