centos7 docker安装kafka:2.13-2.8.1

Posted pan5633

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了centos7 docker安装kafka:2.13-2.8.1相关的知识,希望对你有一定的参考价值。

kafka需要zookeeper管理,所以需要先安装zookeeper

拉取zookeeper镜像:Docker

docker pull wurstmeister/zookeeper:3.4.6

运行zookeeper服务

docker run -d --restart=always \\
 --name zookeeper -p 2181:2181 \\
 -v /etc/localtime:/etc/localtime \\
 --log-driver json-file \\
 --log-opt max-size=100m \\
 --log-opt max-file=2 \\
 wurstmeister/zookeeper:3.4.6

拉取kafka镜像:Docker

docker pull wurstmeister/kafka:2.13-2.8.1

运行kafka服务

docker run -d --name kafka -p 9092:9092 \\
 -e KAFKA_BROKER_ID=0 \\
 -e KAFKA_ZOOKEEPER_CONNECT=主机IP:2181/kafka \\
 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://主机IP:9092 \\
 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 \\
 -v /etc/localtime:/etc/localtime \\
 wurstmeister/kafka:2.13-2.8.1
  • -e KAFKA_BROKER_ID=0  在kafka集群中,每个kafka都有一个BROKER_ID来区分自己
  • -e KAFKA_ZOOKEEPER_CONNECT=192.168.10.191:2181/kafka 配置zookeeper管理kafka的路径
  • -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.10.191:9092  把kafka的地址端口注册给zookeeper
  • -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 配置kafka的监听端口
  • -v /etc/localtime:/etc/localtime 容器时间同步虚拟机的时间

进入kafka容器

docker exec -it kafka /bin/bash

进入kafka的bin目录下

cd /opt/kafka_2.13-2.8.1/bin/

运行kafka生产者发送消息

./kafka-console-producer.sh --broker-list 主机IP:9092 --topic sun 

发送消息 
> "datas":["channel":"","metric":"temperature","producer":"ijinus","sn":"IJA0101-00002245","time":"1543207156000","value":"80"],"ver":"1.0"

运行kafka消费者接收消息

./kafka-console-consumer.sh --bootstrap-server 主机IP:9092 --topic sun --from-beginning

以上是关于centos7 docker安装kafka:2.13-2.8.1的主要内容,如果未能解决你的问题,请参考以下文章

CentOS7安装Docker

CentOS7离线安装Docker和卸载Docker步骤(亲测有效)

Centos7安装Docker

基于centos7.2的docker安装

docker在centos7宿主机上的安装和卸载

Centos7安装Docker CE