docker部署kafka的方法步骤

 更新时间:2021年10月21日 12:00:02   作者:Dawnlight_-_  
本文主要介绍了docker部署kafka的方法步骤,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

1. 搭建docker

这里我直接用的是docker-compose部署,所以需要提前安装好compose。
既然要用compose那么yml文件自然是少不了的。

首先要新建一个目录,并在目录中新建一个yml文件

在这里插入图片描述

文件的内容如下:

version: '2'
services:
  zookeeper:
    image: wurstmeister/zookeeper
    volumes:
      - ./data:/data
    ports:
      - "2181:2181"
       
  kafka:
    image: wurstmeister/kafka
    ports:
      - "9092:9092"
    environment:
      KAFKA_ADVERTISED_HOST_NAME:127.0.0.1
      KAFKA_MESSAGE_MAX_BYTES: 2000000
      KAFKA_CREATE_TOPICS: "Topic1:1:3,Topic2:1:1:compact"
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
    volumes:
      - ./kafka-logs:/kafka
      - /var/run/docker.sock:/var/run/docker.sock
 
  kafka-manager:
    image: sheepkiller/kafka-manager
    ports:
      - 9020:9000
    environment:
      ZK_HOSTS: zookeeper:2181

接着利用这个yml文件启动我们的项目

$ docker-compose up -d

可以看到新建了三个容器

在这里插入图片描述

2.进入容器

我们通过以下命令进入到kafka容器的交互模式

$ docker exec -it kafkademo01_kafka_1 /bin/bash

因为高版本的kafka内置了zookeeper,所以我们无需进入zookeeper容器。所以yml文件中关于zookeeper的部署是可以省略的。

然后进入kafka的根目录

$ cd /opt/kafka

3.修改配置文件

$ cd /config

在这里插入图片描述

首先要修改的是zookeeper的配置文件:zookeeper.properties
(注释已删除)

dataDir=/opt/kafka/zooLogs
clientPort=2182
maxClientCnxns=0
admin.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:9093                                                                                                                    
num.network.threads=3                                                                                                                                   
num.io.threads=8                                                                                                                                        
socket.send.buffer.bytes=102400                                                                                                                         
socket.receive.buffer.bytes=102400
                                                          
socket.request.max.bytes=104857600                                                                                                                      
############################# Log Basics #############################                                                                                  
log.dirs=/opt/kafka/kafkaLogs                                                                                                                           
num.partitions=1                                                                                                                                        
num.recovery.threads.per.data.dir=1                                                                                                                     
############################# Internal Topic Settings  #############################                                                                                                   
offsets.topic.replication.factor=1                                                                                                                       
transaction.state.log.replication.factor=1                                                                                                               
transaction.state.log.min.isr=1                                                                                                                         
############################# Log Retention Policy #############################                                                                        
log.retention.hours=168                                                                                                                                                                                                                                               
log.segment.bytes=1073741824                                                                                                                            
log.retention.check.interval.ms=300000                                                                                                                  
############################# Zookeeper #############################                                                                                   
zookeeper.connect=127.0.0.1:2182                                                                                                       
zookeeper.connection.timeout.ms=18000                                                                                                                   
############################# Group Coordinator Settings #############################                                                                  
group.initial.rebalance.delay.ms=0                                                                                                                      
port=9093                                                                                                                                                
advertised.host.name=127.0.0.1                                                                                                                           
message.max.bytes=2000000                                                                                                                                
advertised.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

消费者

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

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

相关文章

  • 通过docker容器搭建lamp架构的流程

    通过docker容器搭建lamp架构的流程

    这篇文章主要介绍了dcoker容器搭建lamp架构,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-12-12
  • Docker部署Vue项目的项目实践

    Docker部署Vue项目的项目实践

    本文主要介绍了Docker部署Vue项目的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • CentOS7安装使用Docker的步骤

    CentOS7安装使用Docker的步骤

    本篇文章主要介绍了详解CentOS7安装使用Docker的步骤,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • Docker-Compose搭建Spark集群的实现方法

    Docker-Compose搭建Spark集群的实现方法

    本文主要介绍了Docker-Compose搭建Spark集群的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05
  • Docker安装MS SQL Server并使用Navicat远程连接的操作方法

    Docker安装MS SQL Server并使用Navicat远程连接的操作方法

    SQL Server支持广泛的应用程序开发接口(API),包括T-SQL、ADO.NET、ODBC、OLE DB等,并支持多种操作系统,包括Windows、Linux和Docker等,这篇文章主要介绍了Docker安装MS SQL Server并使用Navicat远程连接,需要的朋友可以参考下
    2023-06-06
  • Docker Overlay2磁盘空间占用过大清理的方法实现

    Docker Overlay2磁盘空间占用过大清理的方法实现

    随着业务量的不断增大,容器的不断启动,往往会出现磁盘空间不足,本文主要介绍了Docker Overlay2磁盘空间占用过大清理的方法实现,感兴趣的可以了解一下
    2022-03-03
  • docker磁盘空间清理的解决办法

    docker磁盘空间清理的解决办法

    前段时间遇到docker磁盘空间太少,无法写入数据的问题。本文就来介绍一下docker磁盘空间清理的解决办法,感兴趣的可以了解一下
    2021-06-06
  • docker容器中切换用户,提示权限不足的解决

    docker容器中切换用户,提示权限不足的解决

    这篇文章主要介绍了docker容器中切换用户,提示权限不足的解决,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • docker目录和本地目录互通的实现

    docker目录和本地目录互通的实现

    本文介绍了如何实现Docker目录和本地目录互通,通过这种方式,可以轻松地在Docker容器和本地文件系统之间共享数据,感兴趣的可以了解一下
    2023-08-08
  • 如何基于Dockerfile构建tomcat镜像

    如何基于Dockerfile构建tomcat镜像

    这篇文章主要介绍了如何基于Dockerfile构建tomcat镜像,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-08-08

最新评论