1、下载镜像

 

这里使用了wurstmeister/kafkawurstmeister/zookeeper这两个版本的镜像

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

 

 
docker pull wurstmeister/zookeeper  

  

docker pull wurstmeister/kafka  

  

在命令中运行docker images验证两个镜像已经安装完毕

 

 

2、启动

1、启动zookeeper

 

docker run -d --name zookeeper -p 2181 -t wurstmeister/zookeeper  

  

2、启动kafka

 

 
  1. docker run --name kafka -e HOST_IP=localhost -e KAFKA_ADVERTISED_PORT=9092 -e KAFKA_BROKER_ID=1 -e ZK=zk -p 9092 --link zookeeper:zk -t wurstmeister/kafka  
    

      

可以通过docker ps查看启动状态

 

 

3、测试发送消息

执行Docker ps,找到kafka的Container ID,进入容器内部:

 

docker exec -it ${CONTAINER ID} /bin/bash   

  

 

进入kafka默认目录

 

cd opt/kafka_2.11-0.10.1.1/   

  

 

下面就是跟一般的kafka没什么区别了

创建一个主题:

 

bin/kafka-topics.sh --create --zookeeper zookeeper:2181 --replication-factor 1 --partitions 1 --topic mykafka  

  


 

运行一个消息生产者,指定topic为刚刚创建的主题

 

bin/kafka-console-producer.sh --broker-list localhost:9092 --topic mykafka  

  

运行一个消费者,指定同样的主题

 

bin/kafka-console-consumer.sh --zookeeper zookeeper:2181 --topic mykafka --from-beginning  

  

这时在生产者输入测试消息,在消费者就可以接收消息了



----------

[1] 在Docker上运行Apache Kafka [2] 基于docker部署的微服务架构(五): docker环境下的zookeeper和kafka部署

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄