@@ -53,40 +53,40 @@ services:
5353 retries : 10
5454 start_period : 2s
5555
56- # KRaft mode Kafka - no Zookeeper needed, much simpler
56+ # KRaft mode Kafka - official Apache image, no Zookeeper needed
5757 kafka :
58- image : bitnami /kafka:3.9
58+ image : apache /kafka:3.9.0
5959 container_name : kafka
6060 ports :
6161 - " 9092:9092"
6262 environment :
6363 # KRaft mode configuration
64- KAFKA_CFG_NODE_ID : 0
65- KAFKA_CFG_PROCESS_ROLES : controller, broker
66- KAFKA_CFG_CONTROLLER_QUORUM_VOTERS : 0@kafka :9093
67- # Dual listeners: internal for service-to-service, external for host
68- KAFKA_CFG_LISTENERS : PLAINTEXT ://:29092,CONTROLLER ://:9093,EXTERNAL ://:9092
69- KAFKA_CFG_ADVERTISED_LISTENERS : PLAINTEXT ://kafka:29092,EXTERNAL ://localhost:9092
70- KAFKA_CFG_LISTENER_SECURITY_PROTOCOL_MAP : CONTROLLER:PLAINTEXT,EXTERNAL :PLAINTEXT,PLAINTEXT :PLAINTEXT
71- KAFKA_CFG_CONTROLLER_LISTENER_NAMES : CONTROLLER
72- KAFKA_CFG_INTER_BROKER_LISTENER_NAME : PLAINTEXT
64+ KAFKA_NODE_ID : 1
65+ KAFKA_PROCESS_ROLES : broker,controller
66+ KAFKA_CONTROLLER_QUORUM_VOTERS : 1@localhost :9093
67+ # Listeners: CONTROLLER for raft, HOST for external, DOCKER for internal
68+ KAFKA_LISTENERS : CONTROLLER ://localhost:9093,HOST ://0.0.0.0:9092,DOCKER ://0.0.0.0:29092
69+ KAFKA_ADVERTISED_LISTENERS : HOST ://localhost:9092,DOCKER ://kafka:29092
70+ KAFKA_LISTENER_SECURITY_PROTOCOL_MAP : CONTROLLER:PLAINTEXT,HOST :PLAINTEXT,DOCKER :PLAINTEXT
71+ KAFKA_CONTROLLER_LISTENER_NAMES : CONTROLLER
72+ KAFKA_INTER_BROKER_LISTENER_NAME : DOCKER
7373 # CI optimizations
74- KAFKA_CFG_AUTO_CREATE_TOPICS_ENABLE : " true"
75- KAFKA_CFG_OFFSETS_TOPIC_REPLICATION_FACTOR : 1
76- KAFKA_CFG_TRANSACTION_STATE_LOG_REPLICATION_FACTOR : 1
77- KAFKA_CFG_TRANSACTION_STATE_LOG_MIN_ISR : 1
78- KAFKA_CFG_NUM_PARTITIONS : 1
79- KAFKA_CFG_DEFAULT_REPLICATION_FACTOR : 1
74+ KAFKA_AUTO_CREATE_TOPICS_ENABLE : " true"
75+ KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR : 1
76+ KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR : 1
77+ KAFKA_TRANSACTION_STATE_LOG_MIN_ISR : 1
78+ KAFKA_NUM_PARTITIONS : 1
79+ KAFKA_DEFAULT_REPLICATION_FACTOR : 1
8080 # Reduce memory usage
8181 KAFKA_HEAP_OPTS : " -Xms256m -Xmx512m"
8282 networks :
8383 - ci-network
8484 healthcheck :
85- test : kafka-broker-api-versions.sh --bootstrap-server localhost:9092 || exit 1
85+ test : /opt/kafka/bin/ kafka-broker-api-versions.sh --bootstrap-server localhost:9092 || exit 1
8686 interval : 2s
8787 timeout : 5s
8888 retries : 30
89- start_period : 8s
89+ start_period : 10s
9090
9191 schema-registry :
9292 image : confluentinc/cp-schema-registry:7.5.0
0 commit comments