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