使用Docker安装Kafka

第一步:使用下述命令从Docker Hub查找镜像,此处我们要选择的是zookeeper官网的镜像

docker search zookeeper

使用Docker安装Kafka_第1张图片

第二步:拉取zookeeper镜像

docker pull zookeeper:latest

第三步:启动zookeeper容器

docker run -d --name zookeeper -p 2181:2181 -t zookeeper:latest

第四步:拉取kafka镜像,此处选择的是 wurstmeister/kafka (这个镜像的受欢迎程度最高)

docker pull wurstmeister/kafka:latest

第五步:如果是在Windows系统中可以使用下述命令启动kafka容器

docker run  -d --name kafka -p 9092:9092 -e KAFKA_ZOOKEEPER_CONNECT=192.168.1.75:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.1.75:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -e TZ="Asia/Shanghai" wurstmeister/kafka:latest

如果是在Linux中则可以使用下述命令启动kafka容器: 

docker run  -d --name kafka -p 9092:9092 \
-e KAFKA_ZOOKEEPER_CONNECT=192.168.1.75:2181 \
-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.1.75:9092 \
-e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 \
-e TZ="Asia/Shanghai" \
wurstmeister/kafka:latest

二者的区别就是对于 “\ 符号的支持,其它的配置都一样。

KAFKA_ZOOKEEPER_CONNECT:配置zookeeper服务的地址

KAFKA_ADVERTISED_LISTENERS:zookeeper中存的地址是此处配置的,多个kafka注册到zookeeper就是把这个地址放到zookeeper中。 

KAFKA_LISTENERS:内网部署的程序,读的地址是KAFKA_LISTENERS写的,配置0.0.0.0:9092,表示内网所有网卡都绑定9092

TZ:容器时区改为上海

如果当前服务参数需要调整,可以参考wurstmeister在github上的官网地址:

https://github.com/wurstmeister/kafka-docker

第六步:使用下述命令进入都kafka容器内部,然后进入到 /opt/kafka_2.13-2.8.1/bin 目录下

docker exec -it kafka bash
cd /opt/kafka_2.13-2.8.1/bin

使用Docker安装Kafka_第2张图片

可以看到这里有着许多和kafka操作命令相关的脚本文件。

第七步:使用下述命令创建一个单分区单副本的主题 test123,并且创建生产者生产消息

kafka-topics.sh --create --bootstrap-server localhost:9092 --replication-factor 1 --partitions 1 --topic test123
kafka-console-producer.sh --bootstrap-server localhost:9092 --topic test123

使用Docker安装Kafka_第3张图片

接着另起一个连接创建消费者接收消息:

kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test123 --from-beginning

如上图所示,当看到消费者获取到了生产者发送的消息则说明kafka服务启动成功。 

你可能感兴趣的:(Kafka,kafka)