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 容器的日志输出到本地主机目录
相关推荐
鹤落晴春14 小时前
【K8s】从 ConfigMap 到 Argo CD:Kubernetes 配置管理链路
运维·云原生·容器·kubernetes
ezreal_pan15 小时前
Pod 重启多场景复盘:OOM、日志阻塞、并发 map 读写导致程序崩溃
docker·k8s
玉宇夕落16 小时前
Docker + Milvus,数据库永久存放记忆,让对话历史永不丢失
数据库·docker·llm
名字还没想好☜19 小时前
Docker 镜像瘦身进阶:用 distroless/scratch 把 Go 服务打到 10MB,以及没 shell 怎么调试
运维·docker·容器·golang·kubernetes
JavaPub-rodert19 小时前
Docker 深入理解:从容器原理到生产环境最佳实践
运维·docker·容器
暖核21 小时前
Docker 入门|吃透容器生态与底层原理
运维·docker·容器
滕州市燕猫虎计算机科技工作室个体工商户21 小时前
Docker常用命令
运维·docker·容器
wdfk_prog1 天前
lely-canopen-rtt:为什么推荐在 RT-Thread 上使用 Lely CANopen 构建主站
java·运维·缓存·docker·容器
智_永无止境1 天前
一个Docker命令,40万首古诗词API开箱即用
docker·诗泉
33三 三like1 天前
安装并启动Docker
运维·docker·容器