version: '3' services: zookeeper-1: image: confluentinc/cp-zookeeper:latest container_name: zookeeper-1 environment: ZOOKEEPER_SERVER_ID: 1 ZOOKEEPER_CLIENT_PORT: 2181 ZOOKEEPER_TICK_TIME: 2000 ports: - "22181:2181" broker-1: image: confluentinc/cp-kafka:latest container_name: broker-1 ports: - "19092:9092" depends_on: - zookeeper-1 environment: KAFKA_BROKER_ID: 1 KAFKA_AUTO_CREATE_TOPICS_ENABLE: "true" KAFKA_ZOOKEEPER_CONNECT: 'zookeeper-1:2181' KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://broker-1:9092,PLAINTEXT_HOST://localhost:19092 KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT broker-2: image: confluentinc/cp-kafka:latest container_name: broker-2 ports: - "19093:9092" depends_on: - zookeeper-1 environment: KAFKA_BROKER_ID: 2 KAFKA_AUTO_CREATE_TOPICS_ENABLE: "true" KAFKA_ZOOKEEPER_CONNECT: 'zookeeper-1:2181' KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://broker-2:9093,PLAINTEXT_HOST://localhost:19093 KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT broker-3: image: confluentinc/cp-kafka:latest container_name: broker-3 ports: - "19094:9092" depends_on: - zookeeper-1 environment: KAFKA_BROKER_ID: 3 KAFKA_AUTO_CREATE_TOPICS_ENABLE: "true" KAFKA_ZOOKEEPER_CONNECT: 'zookeeper-1:2181' KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://broker-3:9094,PLAINTEXT_HOST://localhost:19094 KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT