咱們這裏使用第三方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來安裝