Docker Compose部署Kafka(非Zookeeper)

整个工具的代码都在Gitee或者Github地址内

gitee:solomon-parent: 这个项目主要是总结了工作上遇到的问题以及学习一些框架用于整合例如:rabbitMq、reids、Mqtt、S3协议的文件服务器、mongodb

github:GitHub - ZeroNing/solomon-parent: 这个项目主要是总结了工作上遇到的问题以及学习一些框架用于整合例如:rabbitMq、reids、Mqtt、S3协议的文件服务器、mongodb

1.新增data文件夹

2.新增logs文件夹

3.新增docker-compose.yml文件

复制代码
version: '3.8'
services:
  kafka:
    image: apache/kafka:latest  # 使用支持 Kraft 模式的 Kafka 版本
    container_name: kafka
    ports:
      - "9092:9092"  # 将 Kafka 的默认端口映射到主机
    environment:
      KAFKA_KRAFT_MODE: "true"  # 启用 Kraft 模式以取代 Zookeeper
      KAFKA_PROCESS_ROLES: "broker,controller"  # 定义 Kafka 的角色为 broker 和 controller
      KAFKA_NODE_ID: 1  # Kafka 节点的唯一 ID
      KAFKA_LISTENERS: "PLAINTEXT://:9092,CONTROLLER://:29092"  # 配置 Kafka 的监听接口
      KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: "PLAINTEXT:PLAINTEXT,CONTROLLER:PLAINTEXT"  # 定义监听器的协议映射
      KAFKA_INTER_BROKER_LISTENER_NAME: "PLAINTEXT"  # 用于 broker 之间通信的监听器名称
      KAFKA_CONTROLLER_LISTENER_NAMES: "CONTROLLER"  # 定义控制器使用的监听器名称
      KAFKA_CONTROLLER_QUORUM_VOTERS: "1@localhost:29092"  # 配置控制器投票者
      KAFKA_LOG_DIRS: "/var/lib/kafka/data"  # 数据文件存储目录
      KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1  # 设置偏移量主题的复制因子
      KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR: 1  # 定义事务状态日志的复制因子
      KAFKA_TRANSACTION_STATE_LOG_MIN_ISR: 1  # 事务日志的最小同步副本
      KAFKA_MIN_INSYNC_REPLICAS: 1  # 最小同步副本数
      KAFKA_BROKER_ID: 1  # Broker 的唯一 ID
      KAFKA_LOG4J_LOGGERS: "kafka.controller=INFO,state.change.logger=INFO"  # 定义特定日志类别的日志级别
    volumes:
      - ./data/kafka:/var/lib/kafka/data  # 持久化 Kafka 数据到本地目录
      - ./logs/kafka:/var/log/kafka  # 将 Kafka 容器的日志输出到本地主机目录
相关推荐
WnHj1 小时前
kafka的数据消费通过flinksql 入数到Doris的报错(Connection timed out)
分布式·kafka
哥不是小萝莉5 小时前
Kafka监控工具 EFAK-AI 介绍
ai·kafka
hello_2508 小时前
动手模拟docker网络-bridge模式
网络·docker·桥接模式
-L79 小时前
【Kubernetes】常见面试题汇总(十九)
云原生·容器·kubernetes
小醉你真好10 小时前
15、Docker Compose 安装ELK + Filebeat单机版
elk·docker·jenkins
Gss77712 小时前
Docker 公有仓库使用、Docker 私有仓库(Registry)使用总结
docker·容器
暴富奥利奥12 小时前
完成docker方式的ros环境配置
linux·学习·docker·容器
红尘客栈213 小时前
K8S基本命令操作
linux·容器·kubernetes
我好饿113 小时前
部署k8s集群+containerd+dashboard
云原生·容器·kubernetes
hello_25013 小时前
动手模拟k8s网络-vxlan模式
网络·容器·kubernetes