1+ # Copyright 2023 The original authors
2+ #
3+ # Licensed under the Apache License, Version 2.0 (the "License");
4+ # you may not use this file except in compliance with the License.
5+ # You may obtain a copy of the License at
6+
7+ # http://www.apache.org/licenses/LICENSE-2.0
8+ #
9+ # Unless required by applicable law or agreed to in writing, software
10+ # distributed under the License is distributed on an "AS IS" BASIS,
11+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12+ # See the License for the specific language governing permissions and
13+ # limitations under the License.
14+ #
15+ version : ' 3.8'
16+ services :
17+ kafka :
18+ image : " confluentinc/cp-kafka:7.5.0"
19+ ports :
20+ - " 9092:9092"
21+ container_name : kafka
22+ environment :
23+ KAFKA_NODE_ID : 101
24+ # random cluster ID used for formatting LOG_DIR for KRaft
25+ CLUSTER_ID : ' xtzWWN4bTjitpL3kfd9s5g'
26+ KAFKA_CONTROLLER_QUORUM_VOTERS : ' 101@kafka:29093'
27+ KAFKA_PROCESS_ROLES : ' broker,controller'
28+ KAFKA_ADVERTISED_LISTENERS : ' PLAINTEXT://kafka:29092,PLAINTEXT_HOST://localhost:9092'
29+ KAFKA_LISTENERS : ' PLAINTEXT://kafka:29092,PLAINTEXT_HOST://0.0.0.0:9092,CONTROLLER://kafka:29093'
30+ KAFKA_LISTENER_SECURITY_PROTOCOL_MAP : ' CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT'
31+ KAFKA_CONTROLLER_LISTENER_NAMES : ' CONTROLLER'
32+ KAFKA_INTER_BROKER_LISTENER_NAME : ' PLAINTEXT'
33+ KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR : 1
34+ KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR : 1
35+ CONFLUENT_METRICS_REPORTER_BOOTSTRAP_SERVERS : kafka:29092
36+ CONFLUENT_METRICS_REPORTER_TOPIC_REPLICAS : 1
37+ CONFLUENT_METRICS_ENABLE : ' false'
38+ KAFKA_AUTHORIZER_CLASS_NAME : org.apache.kafka.metadata.authorizer.StandardAuthorizer
39+ KAFKA_ALLOW_EVERYONE_IF_NO_ACL_FOUND : ' true'
40+ KAFKA_SUPER_USERS : ' User:anonymous'
41+ networks :
42+ - kafka-platform
43+
44+ schema-registry :
45+ image : confluentinc/cp-schema-registry:7.5.0
46+ hostname : schema-registry
47+ container_name : schema-registry
48+ ports :
49+ - " 8081:8081"
50+ environment :
51+ SCHEMA_REGISTRY_KAFKASTORE_BOOTSTRAP_SERVERS : PLAINTEXT://kafka:29092
52+ SCHEMA_REGISTRY_HOST_NAME : schema-registry
53+ SCHEMA_REGISTRY_LISTENERS : http://0.0.0.0:8081
54+ depends_on :
55+ - kafka
56+ networks :
57+ - kafka-platform
58+ akhq :
59+ image : tchiotludo/akhq
60+ hostname : akhq
61+ container_name : akhq
62+ depends_on :
63+ - kafka
64+ ports :
65+ - " 8087:8080"
66+ environment :
67+ AKHQ_CONFIGURATION : |
68+ akhq:
69+ connections:
70+ docker-kafka-server:
71+ properties:
72+ bootstrap.servers: "kafka:29092"
73+ schema-registry:
74+ url: "http://schema-registry:8081"
75+ connect:
76+ - name: "connect"
77+ url: "http://connect:8083"
78+ networks :
79+ - kafka-platform
80+
81+ connect :
82+ image : confluentinc/cp-kafka-connect:7.5.0
83+ container_name : connect
84+ depends_on :
85+ - kafka
86+ volumes :
87+ - ./connect-plugins:/connect-plugins
88+ ports :
89+ - " 8083:8083"
90+ - " 8000:8000"
91+ environment :
92+ CONNECT_BOOTSTRAP_SERVERS : ' kafka:29092'
93+ CONNECT_REST_ADVERTISED_HOST_NAME : connect
94+ CONNECT_REST_PORT : 8083
95+ CONNECT_GROUP_ID : kafka-connect
96+ CONNECT_CONFIG_STORAGE_TOPIC : _connect-configs
97+ CONNECT_CONFIG_STORAGE_REPLICATION_FACTOR : 1
98+ CONNECT_OFFSET_FLUSH_INTERVAL_MS : 10000
99+ CONNECT_OFFSET_STORAGE_TOPIC : _connect-offsets
100+ CONNECT_OFFSET_STORAGE_REPLICATION_FACTOR : 1
101+ CONNECT_STATUS_STORAGE_TOPIC : _connect-status
102+ CONNECT_STATUS_STORAGE_REPLICATION_FACTOR : 1
103+ CONNECT_KEY_CONVERTER : org.apache.kafka.connect.storage.StringConverter
104+ CONNECT_VALUE_CONVERTER : org.apache.kafka.connect.storage.StringConverter
105+ CONNECT_INTERNAL_KEY_CONVERTER : " org.apache.kafka.connect.json.JsonConverter"
106+ CONNECT_INTERNAL_VALUE_CONVERTER : " org.apache.kafka.connect.json.JsonConverter"
107+ CONNECT_PLUGIN_PATH : " /usr/local/share/kafka/plugins,/usr/share/filestream-connectors,/connect-plugins"
108+ networks :
109+ - kafka-platform
110+
111+ networks :
112+ kafka-platform :
113+ driver : bridge
0 commit comments