docker部署kafka的方法步骤

目录

  • 1. 搭建docker
  • 2.进入容器
  • 3.修改配置文件
  • 4.测试kafka

1. 搭建docker 这里我直接用的是docker-compose部署,所以需要提前安装好compose。
既然要用compose那么yml文件自然是少不了的。
首先要新建一个目录,并在目录中新建一个yml文件
docker部署kafka的方法步骤
文章图片

文件的内容如下:
version: '2'services:zookeeper:image: wurstmeister/zookeepervolumes:- ./data:/dataports:- "2181:2181"kafka:image: wurstmeister/kafkaports:- "9092:9092"environment:KAFKA_ADVERTISED_HOST_NAME:127.0.0.1KAFKA_MESSAGE_MAX_BYTES: 2000000KAFKA_CREATE_TOPICS: "Topic1:1:3,Topic2:1:1:compact"KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181volumes:- ./kafka-logs:/kafka- /var/run/docker.sock:/var/run/docker.sock kafka-manager:image: sheepkiller/kafka-managerports:- 9020:9000environment:ZK_HOSTS: zookeeper:2181

接着利用这个yml文件启动我们的项目
$ docker-compose up -d

可以看到新建了三个容器

docker部署kafka的方法步骤
文章图片


2.进入容器 我们通过以下命令进入到kafka容器的交互模式
$ docker exec -it kafkademo01_kafka_1 /bin/bash

因为高版本的kafka内置了zookeeper,所以我们无需进入zookeeper容器。所以yml文件中关于zookeeper的部署是可以省略的。
然后进入kafka的根目录
$ cd /opt/kafka


3.修改配置文件
$ cd /config

docker部署kafka的方法步骤
文章图片

首先要修改的是zookeeper的配置文件:zookeeper.properties
(注释已删除)
dataDir=/opt/kafka/zooLogsclientPort=2182maxClientCnxns=0admin.enableServer=false

然后修改kafka的配置文件:server.porperties
(注释已删除)
############################# Server Basics #############################broker.id=0############################# Socket Server Settings #############################listeners=PLAINTEXT://127.0.0.1:9093############################# Socket Server Settings #############################listeners=PLAINTEXT://127.0.0.1:9093num.network.threads=3num.io.threads=8socket.send.buffer.bytes=102400socket.receive.buffer.bytes=102400socket.request.max.bytes=104857600############################# Log Basics #############################log.dirs=/opt/kafka/kafkaLogsnum.partitions=1num.recovery.threads.per.data.dir=1############################# Internal Topic Settings#############################offsets.topic.replication.factor=1transaction.state.log.replication.factor=1transaction.state.log.min.isr=1############################# Log Retention Policy #############################log.retention.hours=168log.segment.bytes=1073741824log.retention.check.interval.ms=300000############################# Zookeeper #############################zookeeper.connect=127.0.0.1:2182zookeeper.connection.timeout.ms=18000############################# Group Coordinator Settings #############################group.initial.rebalance.delay.ms=0port=9093advertised.host.name=127.0.0.1message.max.bytes=2000000advertised.port=9093


4.测试kafka 以下是一些基本的命令
启动zookeeper
zookeeper-server-start.sh ../config/zookeeper.properties

启动kafka
kafka-server-start.sh ../config/server.properties

创建一个主题
kafka-topics.sh --create --zookeeper 127.0.0.1:2182 --replication-factor 1 --partitions 1 --topic test

查看创建的主题
kafka-topics.sh --list --zookeeper 127.0.0.1:2182

生产者
kafka-console-producer.sh --broker-list 127.0.0.1:9093 --topic test

【docker部署kafka的方法步骤】消费者
kafka-console-consumer.sh --bootstrap-server 127.0.0.1:9093 --topic test --from-beginning

到此这篇关于docker部署kafka的方法步骤的文章就介绍到这了,更多相关docker部署kafka内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

    推荐阅读