You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Bump confluent versions
* Tidy README. Add M4 workaround.
* Add M4 workaround to compose
* Remove obsolete version start of file
* Remove broken gh action actions-setup-docker
* typo
Co-authored-by: Stéphane Derosiaux <sderosiaux@conduktor.io>
* update logo link
* use smaller logo
* add text with logo
* Move logo above title
---------
Co-authored-by: Ben Starmer-Smith <bstarmersmith@conduktor.io>
Co-authored-by: Stéphane Derosiaux <sderosiaux@conduktor.io>
# An open-source project by [Conduktor](https://conduktor.io/)
4
5
5
-
This project is sponsored by [Conduktor.io](https://www.conduktor.io/), a graphical desktop user interface for Apache Kafka.
6
+
This project is sponsored by [Conduktor.io](https://www.conduktor.io/), the Enterprise Data Management
7
+
Platform for Streaming.
6
8
7
9
Once you have started your cluster, you can use Conduktor to easily manage it.
8
10
Just connect against `localhost:9092`. If you are on Mac or Windows and want to connect from another container, use `host.docker.internal:29092`
9
11
10
12
# kafka-stack-docker-compose
11
13
12
-
This replicates as well as possible real deployment configurations, where you have your zookeeper servers and kafka servers actually all distinct from each other. This solves all the networking hurdles that comes with Docker and docker compose, and is compatible cross platform.
14
+
This replicates as well as possible real deployment configurations, where you have your zookeeper servers and Kafka servers distinct from each other. This solves all the networking hurdles that comes with Docker and Docker Compose, and is compatible cross platform.
13
15
14
-
**UPDATE**: No /etc/hosts file changes are necessary anymore. Explanations at: https://rmoff.net/2018/08/02/kafka-listeners-explained/
16
+
## Stack
15
17
16
-
## Stack version
18
+
- Conduktor Platform
19
+
- Zookeeper version
20
+
- Kafka version
21
+
- Kafka Schema Registry
22
+
- Kafka Rest Proxy
23
+
- Kafka Connect
24
+
- ksqlDB Server
25
+
- Zoonavigator
17
26
18
-
- Conduktor Platform: latest
19
-
- Zookeeper version: 3.6.3 (Confluent 7.3.2)
20
-
- Kafka version: 3.3.0 (Confluent 7.3.2)
21
-
- Kafka Schema Registry: Confluent 7.3.2
22
-
- Kafka Rest Proxy: Confluent 7.3.2
23
-
- Kafka Connect: Confluent 7.3.2
24
-
- ksqlDB Server: Confluent 7.3.2
25
-
- Zoonavigator: 1.1.1
26
-
27
-
For a UI tool to access your local Kafka cluster, use the free version of [Conduktor](https://www.conduktor.io/get-started)
27
+
For a UI tool to access your local Kafka cluster, use the free version of [Conduktor](https://www.conduktor.io/get-started).
28
28
29
29
# Requirements
30
30
31
-
Kafka will be exposed on `127.0.0.1` or `DOCKER_HOST_IP` if set in the environment.
32
-
(You probably don't need to set it if you're not using Docker-Toolbox)
33
-
34
-
## Docker-Toolbox
35
-
Docker toolbox is [deprecated](https://github.com/docker-archive/toolbox) and not maintained anymore for several years.
36
-
We can't guarantee this stack will work with Docker Toolbox, but if you want to try anyway, please export your environment before starting the stack:
37
-
```
38
-
export DOCKER_HOST_IP=192.168.99.100
39
-
```
40
-
(your docker machine IP is usually `192.168.99.100`)
31
+
Kafka will be exposed on `127.0.0.1`.
41
32
42
-
## Apple M1 support
43
-
Confluent platform supports Apple M1 (ARM64) since version `7.2.0`! Basically, this stack will work out of the box.
33
+
## Apple M4 Support
44
34
45
-
If you want to downgrade confluent platform version, there are two ways:
35
+
At the time of writing there is an issue with Apple M4 chip machines and running certain Java based Docker images.
46
36
47
-
1. Add `platform: linux/amd64`. It will work as docker is able to emulate AMD64 instructions.
48
-
2. Previous versions have been [built](https://github.com/arm64-compat/confluent-platform) for ARM64 by the community. If you want to use it, just change the image in the corresponding yml. Since it is a not an official image, use it at your own risks.
37
+
Modify the `conduktor.yml` file, uncomment the environment variable `CONSOLE_JAVA_OPTS: "-XX:UseSVE=0"`.
49
38
50
39
## Full stack
51
40
52
-
To ease you journey with kafka just connect to [localhost:8080](http://localhost:8080/)
53
-
54
-
login: `admin@admin.io`
55
-
password: `admin`
41
+
To ease you journey with Kafka just connect to [localhost:8080](http://localhost:8080/)
56
42
57
43
- Conduktor-platform: `$DOCKER_HOST_IP:8080`
58
44
- Single Zookeeper: `$DOCKER_HOST_IP:2181`
@@ -63,12 +49,11 @@ password: `admin`
63
49
- KSQL Server: `$DOCKER_HOST_IP:8088`
64
50
- (experimental) JMX port at `$DOCKER_HOST_IP:9001`
65
51
66
-
Run with:
67
-
```
68
-
docker compose -f full-stack.yml up
69
-
docker compose -f full-stack.yml down
70
-
```
71
-
** Note: if you find that you can not connect to [localhost:8080](http://localhost:8080/) please run `docker compose -f full-stack.yml build` to rebuild the port mappings.
52
+
Run with:
53
+
```
54
+
docker compose -f full-stack.yml up
55
+
docker compose -f full-stack.yml down
56
+
```
72
57
73
58
## Single Zookeeper / Single Kafka
74
59
@@ -86,7 +71,7 @@ docker compose -f zk-single-kafka-single.yml down
86
71
87
72
## Single Zookeeper / Multiple Kafka
88
73
89
-
If you want to have three brokers and experiment with kafka replication / fault-tolerance.
74
+
If you want to have three brokers and experiment with Kafka replication / fault-tolerance.
90
75
91
76
- Zookeeper will be available at `$DOCKER_HOST_IP:2181`
92
77
- Kafka will be available at `$DOCKER_HOST_IP:9092,$DOCKER_HOST_IP:9093,$DOCKER_HOST_IP:9094`
@@ -115,7 +100,7 @@ docker compose -f zk-multiple-kafka-single.yml down
115
100
116
101
## Multiple Zookeeper / Multiple Kafka
117
102
118
-
If you want to have three zookeeper nodes and three kafka brokers to experiment with production setup.
103
+
If you want to have three zookeeper nodes and three Kafka brokers to experiment with production setup.
119
104
120
105
- Zookeeper will be available at `$DOCKER_HOST_IP:2181,$DOCKER_HOST_IP:2182,$DOCKER_HOST_IP:2183`
121
106
- Kafka will be available at `$DOCKER_HOST_IP:9092,$DOCKER_HOST_IP:9093,$DOCKER_HOST_IP:9094`
@@ -181,9 +166,9 @@ A: yes. This is for testing only!!! Reduce the KAFKA_LOG_SEGMENT_BYTES to 16MB a
181
166
KAFKA_LOG_RETENTION_BYTES: 134217728
182
167
```
183
168
184
-
**Q: How do I expose kafka?**
169
+
**Q: How do I expose Kafka?**
185
170
186
-
A: If you want to expose kafka outside of your local machine, you must set `KAFKA_ADVERTISED_LISTENERS` to the IP of the machine so that kafka is externally accessible. To achieve this you can set `LISTENER_DOCKER_EXTERNAL` to the IP of the machine.
171
+
A: If you want to expose Kafka outside of your local machine, you must set `KAFKA_ADVERTISED_LISTENERS` to the IP of the machine so that Kafka is externally accessible. To achieve this you can set `LISTENER_DOCKER_EXTERNAL` to the IP of the machine.
187
172
For example, if the IP of your machine is `50.10.2.3`, follow the sample mapping below:
188
173
189
174
```
@@ -195,7 +180,7 @@ For example, if the IP of your machine is `50.10.2.3`, follow the sample mapping
0 commit comments