docker pull wurstmeister/zookeeper
docker pull wurstmeister/kafka
2.启动zookeeper容器
docker run -d --name zookeeper -p 2181:2181 -t wurstmeister/zookeeper
3.启动kafka容器
docker run -d --name kafka -p 9092:9092 -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=10.2.0.19:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://10.2.0.19:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -t wurstmeister/kafka
KAFKA_ZOOKEEPER_CONNECT=10.2.0.19:2181 #ip地址改为宿主机器的IP地址
KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://10.2.0.19:9092 #ip地址改为宿主机器的IP地址
4.测试kafka 进入kafka容器的命令行
docker exec -it 镜像id /bin/bash
5.启动消息发方fang 进到bin目录下边
kafka-console-producer.sh --broker-list localhost:9092 --topic mykafka
6.新开窗口启动消息接收方
kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic mykafka --from-beginning
7.在消息发送方(producer
)输入任意消息 在消息接收方 (consumer
) 窗口查看。 没有问题则完成简单的应用。
8.集群搭建
搭建多个kafka,只需要改变brokerId和端口
docker run -d
--name kafka1 -p 9093:9093 -e KAFKA_BROKER_ID=1 -e KAFKA_ZOOKEEPER_CONNECT=
10.2.0.19
:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://
10.2.0.19
:9093 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9093 -t wurstmeister/kafka
9.创建Replication为2,Partition为2的topic输入
kafka-topics.sh --create --zookeeper ip:2181 --replication-factor 2 --partitions 2 --topic partopic
10.查看topic的状态
kafka-topics.sh --describe --zookeeper ip:2181 --topic partopic