Docker环境下的kafka部署

1.下载两个官方imagesdocker

docker pull confluentinc/cp-zookeeperbootstrap

docker pull confluentinc/cp-kafkabash

2.而后建立一个docker-compose.yml 配置以下:server

version: '2'
services:
  zookeeper:
    image: confluentinc/cp-zookeeper
    container_name: zookeeper
    mem_limit: 1024M
    environment:
      ZOOKEEPER_CLIENT_PORT: 2181
  kafka:
    image: confluentinc/cp-kafka
    container_name: kafka
    mem_limit: 1024M
    depends_on:
      - zookeeper
    environment:
      KAFKA_BROKER_NO: 1
      KAFKA_ADVERTISED_HOST_NAME: 127.0.0.1
      KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://127.0.0.1:9092
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
      KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
      KAFKA_HEAP_OPTS: "-Xmx512M -Xms16M"kafka

3.启动docker-compose:it

docker-compose up -dio

4. 打开两个新的终端窗口,分别用如下命令登陆docker:console

docker exec -it kafka /bin/bashdocker-compose

5. 在其中一个窗口里建立topic并运行producertest

kafka-topics --zookeeper zookeeper:2181 --create --replication-factor 1 --partitions 1 --topic kafkatest
kafka-console-producer --broker-list localhost:9092 --topic kafkatest


6.在另外一个窗口里运行consumer:

kafka-console-consumer --bootstrap-server localhost:9092 --topic kafkatest --from-beginning
 

如今,在producer里输入任何内容,都会在consumer里收到。

相关文章
相关标签/搜索