Created
May 7, 2022 20:21
-
-
Save calvinlfer/1315f81532e889fd4e3990900cac8f04 to your computer and use it in GitHub Desktop.
Single node Kafka docker-compose compatible with Docker on M1 Macs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
version: "3.9" | |
services: | |
zookeeper: | |
restart: unless-stopped | |
image: ubuntu/zookeeper:latest | |
ports: | |
- "2181:2181" | |
kafka: | |
image: ubuntu/kafka:latest | |
entrypoint: /opt/kafka/bin/kafka-server-start.sh /etc/kafka/server.properties --override zookeeper.connect=zookeeper:2181 --override broker.id=1 --override advertised.listeners=PLAINTEXT://127.0.0.1:9092 | |
ports: | |
- "9092:9092" | |
depends_on: | |
- zookeeper |
Single compose
version: "3.9"
services:
kafka:
image: ubuntu/kafka
entrypoint: >
bash -c "export CLUSTER_ID=$$(/opt/kafka/bin/kafka-storage.sh random-uuid) &&
/opt/kafka/bin/kafka-storage.sh format --cluster-id $$CLUSTER_ID --config /etc/kafka/kraft/server.properties &&
/opt/kafka/bin/kafka-server-start.sh /etc/kafka/kraft/server.properties
--override advertised.listeners=$$ADVERTISED_LISTENERS
--override listener.security.protocol.map=$$PROTOCOL_MAP
--override listeners=$$LISTENERS"
ports:
- "9092:9092"
environment:
ADVERTISED_LISTENERS: PLAINTEXT://kafka:29092,PLAINTEXT_HOST://localhost:9092
PROTOCOL_MAP: CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
LISTENERS: PLAINTEXT://:29092,PLAINTEXT_HOST://:9092,CONTROLLER://:9093
Adapted instructions from https://hellokube.dev/posts/three-ways-zookeepeerless-kafka/
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Eliminate Zookeeper and use KRaft:
docker build . -t kraftykafka