diff --git a/modules/infra-kafka-cluster/src/entrypoint.sh b/modules/infra-kafka-cluster/src/entrypoint.sh new file mode 100644 index 0000000..fe91dbe --- /dev/null +++ b/modules/infra-kafka-cluster/src/entrypoint.sh @@ -0,0 +1,6 @@ +./bin/kafka-storage.sh format \ + --ignore-formatted \ + --config ./server.properties \ + --cluster-id "$(cat cluster_id)" + +./bin/kafka-server-start.sh ./server.properties diff --git a/modules/infra-kafka-cluster/src/kafka.Dockerfile b/modules/infra-kafka-cluster/src/kafka.Dockerfile index 077cdc5..60c1507 100644 --- a/modules/infra-kafka-cluster/src/kafka.Dockerfile +++ b/modules/infra-kafka-cluster/src/kafka.Dockerfile @@ -32,10 +32,11 @@ VOLUME /tmp/kraft-combined-logs EXPOSE 9092 9093 # Generate a cluster ID (must use this .sh to generate a UUID) -RUN echo "$(./bin/kafka-storage.sh random-uuid)" > cluster_id \ +RUN ./bin/kafka-storage.sh random-uuid > cluster_id \ && echo "Generated a Kafka Cluster ID: $(cat cluster_id)" COPY ./kafka-server.properties ./server.properties +COPY ./entrypoint.sh ./entrypoint.sh # Format storage directories RUN ./bin/kafka-storage.sh format \ @@ -44,7 +45,7 @@ RUN ./bin/kafka-storage.sh format \ --cluster-id "$(cat cluster_id)" # launch the broker in KRaft mode, which means that it runs without ZooKeeper -ENTRYPOINT ["./bin/kafka-server-start.sh", "./server.properties"] +ENTRYPOINT ["./entrypoint.sh"] ### Kafka Connect ##