#/bin/bash
 
#1.docker pull zookeeper and kafka
docker pull wurstmeister/zookeeper
docker pull wurstmeister/kafka
 
#2.docker run zookeeper
docker stop zookeeper
docker rm zookeeper
 
docker run -idt \
--restart=always \
--network host \
--name zookeeper \
-v /etc/localtime:/etc/localtime \
wurstmeister/zookeeper
 
sleep 3s
docker logs zookeeper
 
#3.docker run kafka
docker stop kafka
docker rm kafka
 
docker run -idt \
--restart=always \
--privileged=true \
--network host \
--log-driver json-file \
--log-opt max-size=100m \
--log-opt max-file=2 \
--name kafka \
-e KAFKA_BROKER_ID=0 \
-e KAFKA_ZOOKEEPER_CONNECT=192.168.0.228:2181 \
-e KAFKA_AUTO_CREATE_TOPICS_ENABLE=true \
-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.0.228:9092 \
-e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 \
-v /etc/localtime:/etc/localtime \
wurstmeister/kafka
 
sleep 3s
docker logs kafka
 
#4.test
#4.1 docker exec -it kafka /bin/bash
#4.2 创建topic名为test
#/opt/kafka_2.13-2.7.0/bin/kafka-topics.sh --create --zookeeper zookeeper(ip地址192.168.0.228):2181 --replication-factor 1 --partitions 1 --topic test
#4.3 查看topic列表
#bin/kafka-topics.sh --list --zookeeper zookeeper:2181
#4.4 创建生产者输入测试信息
#bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
#4.5 创建消费者接受信息
#bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning
 
备注:查看topic
#bin/kafka-topics.sh --list --zookeeper zookeeper:2181/kafka
它的zookeeper是zookeeper:2181/kafka.....这个当时不知道怎么写错了,配置了zookeeper管理kafka的路径192.168.0.90:2181/kafka