Kafka安装
下载wurstmeister/kafka源码
git clone https://github.com/wurstmeister/kafka-docker.git
修改docker-compose-single-broker.yml文件
version: '2'services:
zookeeper:
image: wurstmeister/zookeeper
environment:
JMX: 9000
ports:
- "2181:2181"
expose:
- "2181"
kafka:
build: .
ports:
- "9082:9092"
environment:
KAFKA_ADVERTISED_HOST_NAME: 改成你自己的ip
KAFKA_CREATE_TOPICS: "test:1:1"
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
volumes:
- /var/run/docker.sock:/var/run/docker.sock
kafka-manager:
image: sheepkiller/kafka-manager
links:
- kafka
- zookeeper
environment:
ZK_HOSTS: zookeeper:2181
APPLICATION_SECRET: "letmein"
ports:
- "9001:9000"
expose:
- "9001"
// TODO: 了解docker compose的配置
· 代码解释
运行kafka
docker-compose -f docker-compose-single-broker.yml up -d
测试发送消息
1. 执行docker ps,找到kafka的CONTAINER ID,进入容器内部:
docker exec -it ${CONTAINER ID} /bin/bash
2. 进入kafka默认目录
cd opt/kafka_2.11-0.10.1.1/
3. 创建一个主题
bin/kafka-topics.sh --create --zookeeper zookeeper:2181 --replication-factor 1 --partitions 1 --topic topcom-test
4. 运行一个消息生产者,指定topic为刚刚创建的主题
bin/kafka-console-producer.sh --broker-list localhost:9092 --topic topcom-test
5. 运行一个消费者,指定同样的主题
bin/kafka-console-consumer.sh --zookeeper zookeeper:2181 --topic topcom-test --from-beginning