Docker安装使用Kafka(docker 安装kali)

  本篇文章为你整理了Docker安装使用Kafka(docker 安装kali)的详细内容,包含有docker 安装kafka docker 安装kali docker kata docker部署kafka集群 Docker安装使用Kafka,希望能帮助你了解 Docker安装使用Kafka。

  通过Docker拉取镜像的方式进行安装

  照例先去DockerHub找一下镜像源,看下官方提供的基本操作(大部分时候官方教程比网上的要清晰一些,并且大部分教程可能也是翻译的官方的操作步骤,所以直接看官方的就行)

  老实说Kafka的参数配置项太多了,比较繁琐。

  如果是Linux环境下打算直接用官方提供的docker-compose直接读取yml配置文件了

  docker-compose.yml

  

version: "3"

 

  services:

   zookeeper:

   image: bitnami/zookeeper:latest

   ports:

   - 2181:2181

   environment:

   - ALLOW_ANONYMOUS_LOGIN=yes

   kafka:

   image: bitnami/kafka:latest

   ports:

   - 9092:9092

   environment:

   - KAFKA_BROKER_ID=1

   - KAFKA_CFG_LISTENERS=PLAINTEXT://:9092

   - KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://127.0.0.1:9092

   - KAFKA_CFG_ZOOKEEPER_CONNECT=zookeeper:2181

   - ALLOW_PLAINTEXT_LISTENER=yes

   depends_on:

   - zookeeper

  

 

  直接运行即可

  

docker-compose up -d

 

  

 

  官网同时还提供了Kafka without Zookeeper (KRaft)的配置方式

  WIn10可以在Docker容器内部通过挂载配置文件,继续用上面的方式,但我这里决定用繁琐的方式一步步来

  拉取Zookeeper和Kafka镜像(可拉取最新版本,但我喜欢通过tags挑一个)

  

docker pull zookeeper:3.8

 

  docker pull bitnami/kafka:3.1

  

 

  在Docker容器内创建网络(连通Zookeeper和Kafka)

  app-tier:网络名称
 

  –driver:网络类型为bridge

  

docker network create app-tier --driver bridge

 

  

 

  启动Zookeeper节点

  在Docker run命令里加上--network app-tier,让Zookeeper容器启动后连接上创建的网络(并且允许匿名登陆)

  

docker run -d --name zookeeper-server --network app-tier -e ALLOW_ANONYMOUS_LOGIN=yes zookeeper:3.8

 

  

 

  启动kafka服务端

  同样的方式,让Kafka服务端节点也连上这个网络

  

docker run -d --name kafka-server --network app-tier -e ALLOW_PLAINTEXT_LISTENER=yes -e KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://localhost:9092 -e KAFKA_CFG_ZOOKEEPER_CONNECT=zookeeper-server:2181 bitnami/kafka:3.1 

 

  

 

  注意:

  KAFKA_ADVERTISED_HOST_NAME为当前主机IP或地址(重点:如果是服务器部署则配服务器IP或域名否则客户端监听消息会报地址错误)

  kafka 节点启动后,会向 zookeeper 注册自己,同时告诉 zookeeper 自身的通信地址,这个地址就是配置文件中的 advertised.listeners,如果没有配置 advertised.listeners,就会使用listeners。

  启动Kafka客户端

  Finally we create a new container instance to launch the Apache Kafka client and connect to the server created in the previous step:

  

docker run -it --rm --network app-tier -e KAFKA_CFG_ZOOKEEPER_CONNECT=zookeeper-server:2181 bitnami/kafka:3.1 kafka-topics.sh --list --bootstrap-server kafka-server:9092

 

  

 

  Producer and consumer using external client

  These clients, from the same host, will use localhost to connect to Apache Kafka.

  

#生产者创建Topic 

 

  kafka-console-producer.sh --bootstrap-server 127.0.0.1:9092 --topic test

  #消费者接收消息

  kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9092 --topic test --from-beginning

  

 

  最后发送个经典的Hello World做为测试

  kafka-server

  kafka-client

  最后推荐一个kafka的图形化管理工具
 

  kafka-map

  

访问地址:http://服务器IP:9001/ #端口号看自己喜好修改映射

 

  DEFAULT_USERNAME:默认账号admin

  DEFAULT_PASSWORD:默认密码admin

  GitHub地址:https://github.com/dushixiang/kafka-map/blob/master/README-zh_CN.md

  Gitee地址 https://gitee.com/dushixiang/kafka-map

  

 

  拉取镜像

  

docker pull dushixiang/kafka-map:latest

 

  

 

  启动运行

  

docker run -d --name kafka-map --network app-tier -p 9001:8080 -v /opt/kafka-map/data:/usr/local/kafka-map/data -e DEFAULT_USERNAME=admin -e DEFAULT_PASSWORD=admin --restart always dushixiang/kafka-map:latest

 

  

 

  以上就是Docker安装使用Kafka(docker 安装kali)的详细内容,想要了解更多 Docker安装使用Kafka的内容,请持续关注盛行IT软件开发工作室。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: