dockercompose部署kafka集群

该文档展示了如何使用Docker部署一个Zookeeper实例和三个Kafkabrokers。每个Kafka容器都配置了不同的brokerID,连接到同一Zookeeper实例,并挂载了各自的配置、数据和日志目录。Kafkabrokers依赖于Zookeeper服务,并且按照特定顺序启动。
摘要由CSDN通过智能技术生成
version: '2'
services:
  zookeeper:
    image: zookeeper:3.4.14
    ports:
      - "2181:2181"
    restart: always
    container_name: zookeeper
  kafka-1:
    image: wurstmeister/kafka:2.13-2.8.1
    ports:
      - "9092:9092"
    environment:
      KAFKA_ADVERTISED_HOST_NAME: kafka-1
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
      KAFKA_BROKER_ID: 1
    volumes:
      - ./kafka-1/config:/opt/kafka/config
      - ./kafka-1/data:/var/lib/kafka/data
      - ./kafka-1/logs:/var/log/kafka
    depends_on:
      - zookeeper
    restart: always
    container_name: kafka-1
  kafka-2:
    image: wurstmeister/kafka:2.13-2.8.1
    ports:
      - "9093:9092"
    environment:
      KAFKA_ADVERTISED_HOST_NAME: kafka-2
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
      KAFKA_BROKER_ID: 2
    volumes:
      - ./kafka-2/config:/opt/kafka/config
      - ./kafka-2/data:/var/lib/kafka/data
      - ./kafka-2/logs:/var/log/kafka
    depends_on:
      - zookeeper
      - kafka-1
    restart: always
    container_name: kafka-2
  kafka-3:
    image: wurstmeister/kafka:2.13-2.8.1
    ports:
      - "9094:9092"
    environment:
      KAFKA_ADVERTISED_HOST_NAME: kafka-3
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
      KAFKA_BROKER_ID: 3
    volumes:
      - ./kafka-3/config:/opt/kafka/config
      - ./kafka-3/data:/var/lib/kafka/data
      - ./kafka-3/logs:/var/log/kafka
    depends_on:
      - zookeeper
      - kafka-1
      - kafka-2
    restart: always
    container_name: kafka-3

对应的挂载目录需要创建
$ mkdir -p kafka-1/config
$ mkdir -p kafka-1/data
$ mkdir -p kafka-1/logs
$ mkdir -p kafka-2/config
......
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值