下載鏡像
這里使用了wurstmeister/kafka和wurstmeister/zookeeper這兩個版本的鏡像,在hub.docker.com中可以搜索到。
1、docker pull wurstmeister/zookeeper
2、docker pull wurstmeister/kafka
啟動
1、啟動zookeeper
docker run -d --name zookeeper -p 2181 -t wurstmeister/zookeeper
2、啟動kafka
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查看啟動狀態(tài)
測試發(fā)送消息
執(zhí)行docker exec it kafka /bin/bash,進(jìn)入容器內(nèi)部:
1、創(chuàng)建一個主題:
bin/kafka-topics.sh --create --zookeeper zookeeper:2181 --replication-factor 1 --partitions 1 --topic mykafka
2、運行一個消息生產(chǎn)者,指定topic為剛剛創(chuàng)建的主題:
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic mykafka
3、新開一個ssh,進(jìn)入相同目錄,運行一個消費者,指定同樣的主題:
bin/kafka-console-consumer.sh --zookeeper zookeeper:2181 --topic mykafka --from-beginning
4、接下來你就可以在生產(chǎn)者框中輸入信息,在消費者框中就可以收到消息了。