使用Docker快速搭建Kafka开发环境

创建 docker-compose.yml

version: '2'

services:
  zoo1:
    image: wurstmeister/zookeeper
    restart: unless-stopped
    hostname: zoo1
    ports:
      - "2181:2181"
    container_name: zookeeper

  # kafka version: 1.1.0
  # scala version: 2.12
  kafka1:
    image: wurstmeister/kafka
    ports:
      - "9092:9092"
    environment:
      KAFKA_ADVERTISED_HOST_NAME: localhost
      KAFKA_ZOOKEEPER_CONNECT: "zoo1:2181"
      KAFKA_BROKER_ID: 1
      KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
      KAFKA_CREATE_TOPICS: "stream-in:1:1,stream-out:1:1"
    depends_on:
      - zoo1
    container_name: kafka

1,启动docker-compose

在你之前选的那个目录下,执行cmd命令如下:

docker-compose up -d

2,可用性测试

自此,如果没有出现什么错误,通过docker ps 应该可以看到已经成功启动了一个zookeeper容器,两个Kafka容器。

通过指定容器名(假设容器名为 kafka1)进入一个Kafka容器:

docker exec -it kafka1 /bin/bash

查看已有的topic列表:

$KAFKA_HOME/bin/kafka-topics.sh --zookeeper zoo1:2181 --list

发布消息:  (输入若干条消息后 按^C 退出发布)

$KAFKA_HOME/bin/kafka-console-producer.sh --topic=stream-in \

--broker-list kafka1:9092

接收消息:

$KAFKA_HOME/bin/kafka-console-consumer.sh \

--bootstrap-server kafka1:9092 \

--from-beginning --topic stream-in

如果接收到了发布的消息,证明整个部署正常,就可以正式开始开发工作了。

其他命令:

创建主题:$KAFKA_HOME/bin/kafka-topics.sh --create --zookeeper zoo1:2181 --replication-factor 2 --partitions 3 --topic test1

 

https://www.jianshu.com/p/ac03f126980e

https://blog.csdn.net/tiandao321/article/details/97795162

https://www.jianshu.com/p/191adace9de6

docker-compose up

posted @ 2020-03-15 17:24  small_lei_it  阅读(676)  评论(0)    收藏  举报