74 lines
2.2 KiB
YAML
74 lines
2.2 KiB
YAML
# https://blog.exxeta.com/en/2021/05/20/kafka-cluster-setup-with-docker-and-docker-compose/
|
|
|
|
version: "3"
|
|
|
|
networks:
|
|
kafka-cluster:
|
|
name: kafka-cluster
|
|
driver: bridge
|
|
|
|
services:
|
|
zookeeper:
|
|
image: bitnami/zookeeper:3.7.0
|
|
container_name: zookeeper
|
|
ports:
|
|
- '2181:2181'
|
|
environment:
|
|
- ALLOW_ANONYMOUS_LOGIN=yes
|
|
networks:
|
|
- kafka-cluster
|
|
|
|
kafka1:
|
|
image: bitnami/kafka:3.1.0
|
|
container_name: kafka1
|
|
ports:
|
|
- '9093:9093'
|
|
environment:
|
|
- KAFKA_CFG_ZOOKEEPER_CONNECT=zookeeper:2181
|
|
- ALLOW_PLAINTEXT_LISTENER=yes
|
|
- KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP=CLIENT:PLAINTEXT,EXTERNAL:PLAINTEXT
|
|
- KAFKA_CFG_LISTENERS=CLIENT://:9092,EXTERNAL://:9093
|
|
- KAFKA_CFG_ADVERTISED_LISTENERS=CLIENT://kafka1:9092,EXTERNAL://localhost:9093
|
|
- KAFKA_INTER_BROKER_LISTENER_NAME=CLIENT
|
|
- KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE=true
|
|
depends_on:
|
|
- zookeeper
|
|
networks:
|
|
- kafka-cluster
|
|
|
|
kafka2:
|
|
image: bitnami/kafka:3.1.0
|
|
container_name: kafka2
|
|
ports:
|
|
- '9094:9094'
|
|
environment:
|
|
- KAFKA_CFG_ZOOKEEPER_CONNECT=zookeeper:2181
|
|
- ALLOW_PLAINTEXT_LISTENER=yes
|
|
- KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP=CLIENT:PLAINTEXT,EXTERNAL:PLAINTEXT
|
|
- KAFKA_CFG_LISTENERS=CLIENT://:9092,EXTERNAL://:9094
|
|
- KAFKA_CFG_ADVERTISED_LISTENERS=CLIENT://kafka2:9092,EXTERNAL://localhost:9094
|
|
- KAFKA_INTER_BROKER_LISTENER_NAME=CLIENT
|
|
- KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE=true
|
|
depends_on:
|
|
- zookeeper
|
|
networks:
|
|
- kafka-cluster
|
|
|
|
kafka3:
|
|
image: bitnami/kafka:3.1.0
|
|
container_name: kafka3
|
|
ports:
|
|
- '9095:9095'
|
|
environment:
|
|
- KAFKA_CFG_ZOOKEEPER_CONNECT=zookeeper:2181
|
|
- ALLOW_PLAINTEXT_LISTENER=yes
|
|
- KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP=CLIENT:PLAINTEXT,EXTERNAL:PLAINTEXT
|
|
- KAFKA_CFG_LISTENERS=CLIENT://:9092,EXTERNAL://:9095
|
|
- KAFKA_CFG_ADVERTISED_LISTENERS=CLIENT://kafka3:9092,EXTERNAL://localhost:9095
|
|
- KAFKA_INTER_BROKER_LISTENER_NAME=CLIENT
|
|
- KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE=true
|
|
depends_on:
|
|
- zookeeper
|
|
networks:
|
|
- kafka-cluster
|