咱们这里使用第三方docker镜像来安装kafka环境,分别是:wurstmeister/kafka 和 wurstmeister/zookeeper ,如需修改和自定义请查看对应的Dockerfile。docker
1apache 2bootstrap |
sudo docker pull wurstmeister/zookeeperbash sudo docker pull wurstmeister/kafka测试 |
zookeeperui
1spa |
sudo docker run -d --name zookeeper -p 2181 -t wurstmeister/zookeeperserver |
kafka文档
1get |
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,进入容器内部:
1 |
sudo docker exec -it ${CONTAINER ID} /bin/bash |
进入kafka默认目录
1 |
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 |
二、运行一个消生产者,指定topic为刚刚建立的主题
1 |
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic mykafka |
三、运行一个消费者,指定一样的主题
1 |
bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic mykafka --from-beginning |
这时在生产者输入测试消息,在消费者就能够接收消息了
能够参考kafka的官方文档 :http://kafka.apache.org,查看quickstart来安装