运行kafka之前需要先启动zookeeper

查看Kafka版本命令: docker search kafka

  1. [root@zjj101 soft]# docker search kafka
  2. NAME DESCRIPTION STARS OFFICIAL AUTOMATED
  3. wurstmeister/kafka Multi-Broker Apache Kafka Image 1392 [OK]
  4. spotify/kafka A simple docker image with both Kafka and Zo 413 [OK]
  5. sheepkiller/kafka-manager kafka-manager 204 [OK]
  6. kafkamanager/kafka-manager Docker image for Kafka manager 133
  7. ches/kafka Apache Kafka. Tagged versions. JMX. Cluster-… 117 [OK]
  8. hlebalbau/kafka-manager CMAK (previous known as Kafka Manager) As Do 85 [OK]
  9. landoop/kafka-topics-ui UI for viewing Kafka Topics config and data 36 [OK]
  10. johnnypark/kafka-zookeeper Kafka and Zookeeper combined image 23
  11. solsson/kafka http://kafka.apache.org/documentation.html#q… 22 [OK]
  12. debezium/kafka Kafka image required when running the Debezi 21 [OK]
  13. landoop/kafka-lenses-dev Lenses with Kafka. +Connect +Generators +Con 21 [OK]
  14. danielqsj/kafka-exporter Kafka exporter for Prometheus 19 [OK]
  15. landoop/kafka-connect-ui Web based UI for Kafka Connect. 17 [OK]
  16. digitalwonderland/kafka Latest Kafka - clusterable 15 [OK]
  17. tchiotludo/kafkahq Kafka GUI to view topics, topics data, consu 6 [OK]
  18. solsson/kafka-manager Deprecated in favor of solsson/kafka:cmak 5 [OK]
  19. solsson/kafkacat https://github.com/edenhill/kafkacat/pull/110 5 [OK]
  20. solsson/kafka-consumers-prometheus https://github.com/cloudworkz/kafka-minion 4
  21. solsson/kafka-prometheus-jmx-exporter For monitoring of Kubernetes Kafka clusters 4 [OK]
  22. mesosphere/kafka-client Kafka client 3 [OK]
  23. zenko/kafka-manager Kafka Manger https://github.com/yahoo/kafka-… 2 [OK]
  24. digitsy/kafka-magic Kafka Magic images 2
  25. zenreach/kafka-connect Zenreach's Kafka Connect Docker Image 2
  26. anchorfree/kafka Kafka broker and Zookeeper image 2
  27. openwhisk/kafkaprovider Apache OpenWhisk event provider service for … 2 [OK]

选择第一个下载

命令:

  1. docker pull wurstmeister/kafka

如果下载很慢的话,建议修改docker拉取镜像为阿里云镜像,下面是修改方法:

https://blog.csdn.net/qq_41489540/article/details/111817670

下载完了查看镜像

发现已经有了wurstmeister/kafka

  1. [root@zjj101 docker]# docker images
  2. REPOSITORY TAG IMAGE ID CREATED SIZE
  3. wurstmeister/kafka latest c3b059ede60e 3 weeks ago 507MB
  4. rabbitmq management e2b066e3fc02 2 months ago 186MB
  5. mysql 5.7 87eca374c0ed 2 months ago 447MB
  6. zookeeper 3.4.10 d9fe1374256f 3 years ago 144MB

启动Kafka

启动Kafka之前必须要先启动zookeeper,这里不演示了.

如果不会安装启动的话看这个帖子:https://blog.csdn.net/qq_41489540/article/details/109129293

启动命令:

  1. [root@zjj101 docker]# docker run -d --name kafka --publish 9092:9092 --link zookeeper --env KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181 --env KAFKA_ADVERTISED_HOST_NAME=zjj101 --env KAFKA_ADVERTISED_PORT=9092 --volume /etc/localtime:/etc/localtime wurstmeister/kafka:latest
  2. 96d83e444a8cce0ee0e50f737c6ffcd457d2ca70c34cdc6f880c51a5a286c5f9

说明:

env KAFKA_ADVERTISED_HOST_NAME=zjj101 这个zjj101是你安装Kafka机器的地址,我这里是配置了host域名映射,所以就是zjj101

测试kafka 是否好使

  1. [root@zjj101 docker]# docker ps
  2. CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
  3. 96d83e444a8c wurstmeister/kafka:latest "start-kafka.sh" 2 minutes ago Up 2 minutes 0.0.0.0:9092->9092/tcp, :::9092->9092/tcp kafka
  4. d06e6a92f4c1 d9fe1374256f "/docker-entrypoint.…" 47 minutes ago Up 12 minutes 2888/tcp, 0.0.0.0:2181->2181/tcp, :::2181->2181/tcp, 3888/tcp zookeeper

查看到Kafka的 CONTAINER ID 是 96d83e444a8c

进入到Kafka内部 , 96d83e444a8c是Kafka的 CONTAINER ID ,

进入到opt目录下的kafka_2.13-2.7.0目录,创建topic,创建命令是 bin/kafka-topics.sh —create —zookeeper zookeeper:2181 —replication-factor 1 —partitions 1 —topic test01

然后查看创建列表,命令是bin/kafka-topics.sh —list —zookeeper zookeeper:2181

  1. # 步骤1: 进入到Kafka内部 , 96d83e444a8c是Kafka的 CONTAINER ID
  2. [root@zjj101 docker]# docker exec -it 96d83e444a8c /bin/bash
  3. bash-5.1# ls
  4. bin etc kafka lib64 mnt proc run srv tmp var
  5. dev home lib media opt root sbin sys usr
  6. # 步骤2: 进入到指定的文件夹目录下
  7. bash-5.1# cd /opt/
  8. bash-5.1# ls
  9. kafka kafka_2.13-2.7.0 overrides
  10. bash-5.1# cd kafka_2.13-2.7.0/
  11. #步骤3: 创建一个topic
  12. bash-5.1# bin/kafka-topics.sh --create --zookeeper zookeeper:2181 --replication-factor 1 --partitions 1 --topic test01
  13. Created topic test01.
  14. #步骤4: 查看topic列表
  15. bash-5.1# bin/kafka-topics.sh --list --zookeeper zookeeper:2181
  16. test01