4 image: confluentinc/cp-zookeeper:7.5.1
6 ZOOKEEPER_CLIENT_PORT: 2181
10 - zookeeper-data:/var/lib/zookeeper/data
11 - zookeeper-log:/var/lib/zookeeper/log
14 image: confluentinc/cp-kafka:7.5.1
16 KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
17 KAFKA_LISTENERS: BROKER://:9092, LOCALHOST://:9081
18 KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: BROKER:PLAINTEXT, LOCALHOST:PLAINTEXT
19 KAFKA_ADVERTISED_LISTENERS: BROKER://kafka-1:9092, LOCALHOST://localhost:9081
21 KAFKA_INTER_BROKER_LISTENER_NAME: BROKER
22 KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 3
23 KAFKA_AUTO_CREATE_TOPICS_ENABLE: "false"
25 - kafka-1-data:/var/lib/kafka/data
28 stop_grace_period: 120s
33 image: confluentinc/cp-kafka:7.5.1
35 KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
36 KAFKA_LISTENERS: BROKER://:9092, LOCALHOST://:9082
37 KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: BROKER:PLAINTEXT, LOCALHOST:PLAINTEXT
38 KAFKA_ADVERTISED_LISTENERS: BROKER://kafka-2:9092, LOCALHOST://localhost:9082
40 KAFKA_INTER_BROKER_LISTENER_NAME: BROKER
41 KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 3
42 KAFKA_AUTO_CREATE_TOPICS_ENABLE: "false"
44 - kafka-2-data:/var/lib/kafka/data
52 stop_grace_period: 120s
57 image: confluentinc/cp-kafka:7.5.1
59 KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
60 KAFKA_LISTENERS: BROKER://:9092, LOCALHOST://:9083
61 KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: BROKER:PLAINTEXT, LOCALHOST:PLAINTEXT
62 KAFKA_ADVERTISED_LISTENERS: BROKER://kafka-3:9092, LOCALHOST://localhost:9083
64 KAFKA_INTER_BROKER_LISTENER_NAME: BROKER
65 KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 3
66 KAFKA_AUTO_CREATE_TOPICS_ENABLE: "false"
68 - kafka-3-data:/var/lib/kafka/data
71 stop_grace_period: 120s
76 image: confluentinc/cp-schema-registry:7.5.1
78 SCHEMA_REGISTRY_KAFKASTORE_BOOTSTRAP_SERVERS: kafka-1:9092,kafka-2:9092,kafka-3:9092
79 SCHEMA_REGISTRY_HOST_NAME: schema-registry
80 SCHEMA_REGISTRY_LISTENERS: http://0.0.0.0:8085
81 SCHEMA_REGISTRY_LOG4J_ROOT_LOGLEVEL: INFO
90 image: confluentinc/cp-kafka-connect:7.5.1
92 CONNECT_BOOTSTRAP_SERVERS: kafka-1:9092,kafka-2:9092,kafka-3:9092
93 CONNECT_REST_PORT: 8083
94 CONNECT_REST_LISTENERS: http://0.0.0.0:8083
95 CONNECT_REST_ADVERTISED_HOST_NAME: connect
96 CONNECT_CONFIG_STORAGE_TOPIC: __connect-config
97 CONNECT_OFFSET_STORAGE_TOPIC: __connect-offsets
98 CONNECT_STATUS_STORAGE_TOPIC: __connect-status
99 CONNECT_GROUP_ID: kafka-connect
100 CONNECT_KEY_CONVERTER_SCHEMAS_ENABLE: "true"
101 CONNECT_KEY_CONVERTER: io.confluent.connect.avro.AvroConverter
102 CONNECT_KEY_CONVERTER_SCHEMA_REGISTRY_URL: http://schema-registry:8085
103 CONNECT_VALUE_CONVERTER_SCHEMAS_ENABLE: "true"
104 CONNECT_VALUE_CONVERTER: io.confluent.connect.avro.AvroConverter
105 CONNECT_VALUE_CONVERTER_SCHEMA_REGISTRY_URL: http://schema-registry:8085
106 CONNECT_INTERNAL_KEY_CONVERTER: org.apache.kafka.connect.json.JsonConverter
107 CONNECT_INTERNAL_VALUE_CONVERTER: org.apache.kafka.connect.json.JsonConverter
108 CONNECT_OFFSET_STORAGE_REPLICATION_FACTOR: 1
109 CONNECT_CONFIG_STORAGE_REPLICATION_FACTOR: 1
110 CONNECT_STATUS_STORAGE_REPLICATION_FACTOR: 1
111 CONNECT_PLUGIN_PATH: /usr/share/java/
123 cub kafka-ready -b kafka-1:9092,kafka-2:9092,kafka-3:9092 3 60 > /dev/null 2>&1 || exit 1
124 if [ -e INITIALIZED ]
126 echo -n Bereits konfiguriert:
128 kafka-topics --bootstrap-server kafka:9092 --describe --topic test
130 kafka-topics --bootstrap-server kafka:9092 \
134 kafka-topics --bootstrap-server kafka:9092 \
138 --replication-factor 3 \
139 --config min.insync.replicas=2 \
140 && echo Das Topic \'test\' wurde erfolgreich angelegt: \
141 && kafka-topics --bootstrap-server kafka:9092 --describe --topic test \
142 && date > INITIALIZED
144 stop_grace_period: 0s
151 image: tchiotludo/akhq:0.23.0
155 AKHQ_CONFIGURATION: |
160 bootstrap.servers: "kafka:9092"
162 url: "http://schema-registry:8085"
165 url: "http://connect:8083"
173 command: sleep infinity
174 stop_grace_period: 0s