使用docker安装kafka

我们这里使用第三方docker镜像来安装kafka环境,分别是:wurstmeister/kafka 和 wurstmeister/zookeeper ,如需修改和自定义请查看对应的Dockerfile。

下载镜像

sudo docker pull wurstmeister/zookeeper 
sudo docker pull wurstmeister/kafka

启动镜像

zookeeper

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

kafka

sudo docker run -d --name kafka --publish 9092:9092 --link zookeeper --env KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181 --env KAFKA_ADVERTISED_HOST_NAME=127.0.0.1 --env KAFKA_ADVERTISED_PORT=9092 --volume /etc/localtime:/etc/localtime wurstmeister/kafka:latest  

测试发送消息

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

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

进入kafka默认目录

cd /opt/kafka_2.11-0.10.1.1/ 

注意这里安装的kafka版本可能有区别,请进入到opt目录下再进行识别。

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

1、创建一个主题

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

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

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

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

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

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

 

 

 

参考链接:

https://blog.csdn.net/snowcity1231/article/details/54946857

 

 

 

 

2 Replies to “使用docker安装kafka”

  1. 运行消费者,使用的命令应该是:

    bin/kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9092 --topic mykafka --from-beginning

    是 --bootstrap-server 选项,不是 --zookeeper 选项

Leave a Reply

Your email address will not be published.