docker-compose搭建kafka 本地环境

该文指导如何安装docker-compose,然后创建并配置Zookeeper和Kafka的服务目录,通过配置文件设置环境变量和端口映射,创建Kafka主题,并依赖Zookeeper服务。最后,启动docker-compose管理的Kafka集群及KafkaManager。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

以下是docker-compose 文件。

# 1. 安装docker-compose,需要预先安装好Docker
sudo curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# 增加可执行权限
sudo chmod +x /usr/local/bin/docker-compose
# 2. 创建相关文件夹
mkdir -p /Users/liumingning/opt/zookeeper && mkdir -p /Users/liumingning/opt/kafka
# 3. 准备配置文件
echo '
version: '3.7'
services:
  zookeeper:
    image: wurstmeister/zookeeper
    volumes:
       - /Users/liumingning/opt/zookeeper/data:/data
    container_name: zookeeper
    mem_limit: 1024M
    environment:
      ZOOKEEPER_CLIENT_PORT: 2181
      ZOOKEEPER_TICK_TIME: 2000
    ports:
      - 2181:2181
    restart: always
  kafka_node1:
    image: wurstmeister/kafka
    container_name: kafka_node1
    mem_limit: 1024M
    depends_on:
      - zookeeper
    ports: 
      - 9092:9092
    volumes:
      - /Users/liumingning/opt/kafka/data:/kafka
    environment:
      KAFKA_CREATE_TOPICS: "test"
      KAFKA_BROKER_NO: 0
      KAFKA_LISTENERS: PLAINTEXT://kafka_node1:9092
      KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://${kafka_service_public_ip}:${kafka_service_public_port}
      KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
      KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
      KAFKA_HEAP_OPTS: "-Xmx512M -Xms16M"
    restart: always
  kafka_manager: 
    image: hlebalbau/kafka-manager:stable
    ports:
      - 9000:9000
    environment:
      ZK_HOSTS: "zookeeper:2181"  
    depends_on:
      - zookeeper
      - kafka_node1
    restart: always' > /Users/liumingning/docker/kafka02/kafka.yml
# 3. 启动容器服务
docker-compose -f /Users/liumingning/docker/kafka02/kafka.yml  up -d
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值