• 30秒完成在Docker Desktop中搭建kafka----你肯定没我快


    在上一节中我们在Docker Desktop中完成了RocketMQ的搭建,简单且快速,本章我们来安装kafka,相信很多人都会需要。

    和上一节的搭建一样,我们这次还是使用compose 文件去搭建我们的环境

    第一步:
    在你搭建RocketMQ的地方创建一个docker-compose.yml文件

    在这里插入图片描述

    内容如下:

    version: '3'
    services:
      zookepper:
        image: wurstmeister/zookeeper                    # 原镜像`wurstmeister/zookeeper`
        container_name: zookeeper                        # 容器名为'zookeeper'
        volumes:                                         # 数据卷挂载路径设置,将本机目录映射到容器目录
          - "/etc/localtime:/etc/localtime"
        ports:                                           # 映射端口
          - "2181:2181"
    
      kafka:
        image: wurstmeister/kafka                                # 原镜像`wurstmeister/kafka`
        container_name: kafka                                    # 容器名为'kafka'
        volumes:                                                 # 数据卷挂载路径设置,将本机目录映射到容器目录
          - "/etc/localtime:/etc/localtime"
        environment:                                                       # 设置环境变量,相当于docker run命令中的-e
          KAFKA_BROKER_ID: 0                                               # 在kafka集群中,每个kafka都有一个BROKER_ID来区分自己
          KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://localhost:9092 # TODO 将kafka的地址端口注册给zookeeper
          KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9092                        # 配置kafka的监听端口
          KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181                # zookeeper地址
          KAFKA_CREATE_TOPICS: "hello~"
        ports:                              # 映射端口
          - "9092:9092"
        depends_on:                         # 解决容器依赖启动先后问题
          - zookepper
    
      kafka-manager:
        image: sheepkiller/kafka-manager                         # 原镜像`sheepkiller/kafka-manager`
        container_name: kafka-manager                            # 容器名为'kafka-manager'
        environment:                        # 设置环境变量,相当于docker run命令中的-e
          ZK_HOSTS: zookeeper:2181  #  zookeeper地址
          APPLICATION_SECRET: xxxxx
          KAFKA_MANAGER_AUTH_ENABLED: "true"  # 开启kafka-manager权限校验
          KAFKA_MANAGER_USERNAME: admin       # 登陆账户
          KAFKA_MANAGER_PASSWORD: 123456      # 登陆密码
        ports:                              # 映射端口
          - "9000:9000"
        depends_on:                         # 解决容器依赖启动先后问题
          - kafka
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39

    注意:文件内KAFKA_ADVERTISED_LISTENERS中的 ip 需要改成自己的

    第二步:
    在存放docker-compose.yml的目录下执行启动命令:

    docker-compose up -d
    
    • 1

    运行结束之后kafka就搭建完成了,可以在你的控制台看见:

    在这里插入图片描述
    然后我们再来测试一下我们的kafka好用不好用:

    进入kafka 的容器:docker exec -it kafka sh

    创建一个topic(随便叫什么都可以):$KAFKA_HOME/bin/kafka-topics.sh --create --topic xiong --partitions 4 --zookeeper zookeeper:2181 --replication-factor 1

    查看刚创建的topic信息:$KAFKA_HOME/bin/kafka-topics.sh --zookeeper zookeeper:2181 --describe --topic xiong

    在这里插入图片描述
    启动一个消费者:$KAFKA_HOME/bin/kafka-console-consumer.sh --bootstrap-server kafka:9092 --from-beginning --topic xiong

    新增一个窗口,启动一个生产者:docker exec -it kafka sh

    $KAFKA_HOME/bin/kafka-console-producer.sh --topic=xiong --broker-list kafka:9092

    在这里插入图片描述
    测试完毕

    结果完美~~

    惯例再推荐一本书:《端粒效应》
    在这里插入图片描述

    主要说衰老的秘密,但又不仅仅说的衰老

    有兴趣的童鞋可以试听一下,附上得到听书的链接:

    《端粒效应》

    (过期可在评论找我)

  • 相关阅读:
    【MySQL —— 事务】四大特性、隔离级别
    算法竞赛进阶指南 基本算法 0x06 倍增
    Vue2项目引入element ui的表格第一行有输入框要禁用
    软件测试系列——概述,用例设计
    星球作业(第十一期)Android中Binder简述
    Windows下Python环境下载与安装
    Spring Security和oauth2的关系
    SpringBoot的EnableCaching简述
    动手学Avalonia:基于硅基流动构建一个文生图应用(一)
    Flask 学习-44.Flask-RESTX 请求参数校验reqparse.RequestParser()
  • 原文地址:https://blog.csdn.net/weixin_42222436/article/details/126108531