在docker中搭建Kafka

本文详细介绍了如何使用Docker来搭建Zookeeper和Kafka服务,包括拉取镜像、设置环境变量、启动容器以及创建和检查Kafka的topic。Zookeeper作为Kafka的依赖被首先启动,然后配置并启动Kafka容器,确保其能连接到Zookeeper。最后,通过Kafka的命令行工具创建了新的topic。
摘要由CSDN通过智能技术生成

目录

1. 搭建zookeeper

拉取zookeeper的镜像

启动zookeeper

2.搭建Kafka

拉取Kafka的镜像

启动Kafka

3.查看是否启动成功

4.添加topic

进入Kafka容器, 并进入/bin目录下

创建topic

查看topic信息


1. 搭建zookeeper

拉取zookeeper的镜像

sudo docker pull wurstmeister/zookeeper

启动zookeeper

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

2.搭建Kafka

拉取Kafka的镜像

sudo docker pull wurstmeister/kafka

启动Kafka

sudo docker run \
-d  \
--log-driver json-file \
--log-opt max-size=100m \
--log-opt max-file=2 \
--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

3.查看是否启动成功

ubuntu@VM-4-6-ubuntu:~$ sudo docker ps
CONTAINER ID   IMAGE                    COMMAND                  CREATED      STATUS      PORTS                                                                   NAMES
016084d9857a   wurstmeister/kafka       "start-kafka.sh"         3 days ago   Up 3 days   0.0.0.0:9092->9092/tcp, :::9092->9092/tcp                               kafka
95ce6973f548   wurstmeister/zookeeper   "/bin/sh -c '/usr/sb…"   3 days ago   Up 3 days   22/tcp, 2888/tcp, 3888/tcp, 0.0.0.0:2181->2181/tcp, :::2181->2181/tcp   zookeeper

4.添加topic

进入Kafka容器, 并进入/bin目录下

ubuntu@VM-4-6-ubuntu:~$ sudo docker exec -it kafka /bin/bash
bash-5.1# cd /opt/kafka_2.13-2.8.1/bin/

创建topic

bash-5.1# ./kafka-topics.sh --create --topic test_topic --bootstrap-server localhost:9092
WARNING: Due to limitations in metric names, topics with a period ('.') or underscore ('_') could collide. To avoid issues it is best to use either, but not both.
Created topic exercise_item.

提示topic的名称最好不要包含('.') 或('_'), 但是也可以创建成功


bash-5.1# ./kafka-topics.sh --create --topic item-topic --bootstrap-server localhost:9092
Created topic item-topic.

在创建一个符合命名规范的

查看topic信息

bash-5.1# ./kafka-topics.sh --describe --topic item-topic --bootstrap-server localhost:9092
Topic: item-topic       TopicId: 6pFQIfi_QKmnjGGa3yk1Tw PartitionCount: 1       ReplicationFactor: 1    Configs: segment.bytes=1073741824
        Topic: item-topic       Partition: 0    Leader: 0       Replicas: 0     Isr: 0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值