Kafka setup with docker-compose

前端 未结 3 2094
盖世英雄少女心
盖世英雄少女心 2021-02-04 05:51

Hi I\'m currently setting up Kafka with Docker. I\'ve managed to setup Zookeeper and Kafka with the published confluent image, see following docker-compose file:



        
3条回答
  •  难免孤独
    2021-02-04 06:29

    Omar, maybe you've already resolved your problem, but for future reference, Hans Jespersen's comment did the trick for me, even on Windows.

    As admin, open C:\Windows\System32\drivers\etc\hosts and add the following line to expose the kafka broker as localhost. 127.0.0.1 broker

    And mydocker-compose.yml file looks as follows:

    ---
    version: '2'
    services:
      zookeeper:
        image: confluentinc/cp-zookeeper
        hostname: zookeeper
        extra_hosts:
        - "moby:127.0.0.1"
        ports:
          - "2181:2181"
        environment:
          ZOOKEEPER_CLIENT_PORT: 2181
          ZOOKEEPER_TICK_TIME: 2000
    
      broker:
        image: confluentinc/cp-kafka
        hostname: broker
        extra_hosts:
        - "moby:127.0.0.1"
        depends_on:
          - zookeeper
        ports:
          - '9092:9092'
        environment:
          KAFKA_BROKER_ID: 1
          KAFKA_ZOOKEEPER_CONNECT: 'zookeeper:2181'
          KAFKA_ADVERTISED_LISTENERS: 'PLAINTEXT://broker:9092'
          KAFKA_DEFAULT_REPLICATION_FACTOR: 1
    
      schema_registry:
        image: confluentinc/cp-schema-registry
        hostname: schema_registry
        # extra_hosts:
        # - "moby:127.0.0.1"
        depends_on:
          - zookeeper
          - broker
        ports:
          - '8081:8081'
        environment:
          SCHEMA_REGISTRY_HOST_NAME: schema_registry
          SCHEMA_REGISTRY_KAFKASTORE_CONNECTION_URL: 'zookeeper:2181'
    
      kafka-rest:
        image: confluentinc/cp-kafka-rest
        container_name: kafka-rest
        extra_hosts:
        - "moby:127.0.0.1"
        depends_on:
          - zookeeper
          - broker
        ports:
          - '8082:8082'
        environment:
          KAFKA_REST_ZOOKEEPER_CONNECT: 'zookeeper:2181'
          KAFKA_REST_LISTENERS: http://kafka-rest:8082
          KAFKA_REST_SCHEMA_REGISTRY_URL: http://schema-registry:8081
          KAFKA_REST_HOST_NAME: kafka-rest
    

    Alternatively, exposing my laptop's current IP address (using ipconfig /all) works too, but this has the disadvantage that, whenever my network changes, I would have to change the docker-compose.yml file too.

提交回复
热议问题