4 image: bitnami/kafka:3.3.1
6 KAFKA_ENABLE_KRAFT: 'yes'
7 KAFKA_KRAFT_CLUSTER_ID: r7dMBY60T16TrNCGeXniLw
8 KAFKA_CFG_PROCESS_ROLES: controller
9 KAFKA_CFG_CONTROLLER_LISTENER_NAMES: CONTROLLER
10 KAFKA_CFG_LISTENERS: CONTROLLER://:9092
11 KAFKA_CFG_ADVERTISED_LISTENERS: " "
12 KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP: CONTROLLER:PLAINTEXT
14 KAFKA_CFG_CONTROLLER_QUORUM_VOTERS: 0@kafka-0:9092
15 ALLOW_PLAINTEXT_LISTENER: 'yes'
16 KAFKA_CFG_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
17 KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE: "false"
19 test: [ "CMD", "kafka-topics.sh", "--bootstrap-server", ":9092", "--list" ]
22 image: bitnami/kafka:3.3.1
24 KAFKA_ENABLE_KRAFT: 'yes'
25 KAFKA_KRAFT_CLUSTER_ID: r7dMBY60T16TrNCGeXniLw
26 KAFKA_CFG_PROCESS_ROLES: broker
27 KAFKA_CFG_CONTROLLER_LISTENER_NAMES: CONTROLLER
28 KAFKA_CFG_LISTENERS: BROKER://:9092, LOCALHOST://:9081
29 KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP: BROKER:PLAINTEXT, CONTROLLER:PLAINTEXT, LOCALHOST:PLAINTEXT
30 KAFKA_CFG_ADVERTISED_LISTENERS: BROKER://kafka-1:9092, LOCALHOST://localhost:9081
32 KAFKA_CFG_CONTROLLER_QUORUM_VOTERS: 0@kafka-0:9092
33 ALLOW_PLAINTEXT_LISTENER: 'yes'
34 KAFKA_CFG_INTER_BROKER_LISTENER_NAME: BROKER
35 KAFKA_CFG_OFFSETS_TOPIC_REPLICATION_FACTOR: 3
36 KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE: "false"
40 test: [ "CMD", "kafka-topics.sh", "--bootstrap-server", ":9092", "--list" ]
43 condition: service_healthy
46 image: bitnami/kafka:3.3.1
48 KAFKA_ENABLE_KRAFT: 'yes'
49 KAFKA_KRAFT_CLUSTER_ID: r7dMBY60T16TrNCGeXniLw
50 KAFKA_CFG_PROCESS_ROLES: broker
51 KAFKA_CFG_CONTROLLER_LISTENER_NAMES: CONTROLLER
52 KAFKA_CFG_LISTENERS: BROKER://:9092, LOCALHOST://:9082
53 KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP: BROKER:PLAINTEXT, CONTROLLER:PLAINTEXT, LOCALHOST:PLAINTEXT
54 KAFKA_CFG_ADVERTISED_LISTENERS: BROKER://kafka-2:9092, LOCALHOST://localhost:9082
56 KAFKA_CFG_CONTROLLER_QUORUM_VOTERS: 0@kafka-0:9092
57 ALLOW_PLAINTEXT_LISTENER: 'yes'
58 KAFKA_CFG_INTER_BROKER_LISTENER_NAME: BROKER
59 KAFKA_CFG_OFFSETS_TOPIC_REPLICATION_FACTOR: 3
60 KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE: "false"
69 test: [ "CMD", "kafka-topics.sh", "--bootstrap-server", ":9092", "--list" ]
72 condition: service_healthy
75 image: bitnami/kafka:3.3.1
77 KAFKA_ENABLE_KRAFT: 'yes'
78 KAFKA_KRAFT_CLUSTER_ID: r7dMBY60T16TrNCGeXniLw
79 KAFKA_CFG_PROCESS_ROLES: broker
80 KAFKA_CFG_CONTROLLER_LISTENER_NAMES: CONTROLLER
81 KAFKA_CFG_LISTENERS: BROKER://:9092, LOCALHOST://:9083
82 KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP: BROKER:PLAINTEXT, CONTROLLER:PLAINTEXT, LOCALHOST:PLAINTEXT
83 KAFKA_CFG_ADVERTISED_LISTENERS: BROKER://kafka-3:9092, LOCALHOST://localhost:9083
85 KAFKA_CFG_CONTROLLER_QUORUM_VOTERS: 0@kafka-0:9092
86 ALLOW_PLAINTEXT_LISTENER: 'yes'
87 KAFKA_CFG_INTER_BROKER_LISTENER_NAME: BROKER
88 KAFKA_CFG_OFFSETS_TOPIC_REPLICATION_FACTOR: 3
89 KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE: "false"
93 test: [ "CMD", "kafka-topics.sh", "--bootstrap-server", ":9092", "--list" ]
96 condition: service_healthy
102 kafka-topics --bootstrap-server kafka:9092 --delete --if-exists --topic test
103 kafka-topics --bootstrap-server kafka:9092 --create --topic test --partitions 2 --replication-factor 3 --config min.insync.replicas=2
104 kafka-topics --bootstrap-server kafka:9092 --describe --topic test
108 condition: service_healthy
110 condition: service_healthy
112 condition: service_healthy
116 command: sleep infinity
119 image: juplo/simple-producer:1.0-SNAPSHOT
123 condition: service_healthy
125 condition: service_healthy
127 condition: service_healthy
130 image: juplo/simple-consumer:1.0-SNAPSHOT
131 command: kafka:9092 test my-group consumer-1
134 condition: service_healthy
136 condition: service_healthy
138 condition: service_healthy
141 image: juplo/simple-consumer:1.0-SNAPSHOT
142 command: kafka:9092 test my-group consumer-2
145 condition: service_healthy
147 condition: service_healthy
149 condition: service_healthy
152 image: juplo/simple-consumer:1.0-SNAPSHOT
153 command: kafka:9092 test my-group consumer-3
156 condition: service_healthy
158 condition: service_healthy
160 condition: service_healthy
166 kafka-console-consumer \
167 --bootstrap-server kafka:9092 \
168 --topic __consumer_offsets --from-beginning \
169 --formatter "kafka.coordinator.group.GroupMetadataManager\$$OffsetsMessageFormatter"
173 condition: service_healthy
175 condition: service_healthy
177 condition: service_healthy