programecomguedes/javaspringboot-azureeventhub-kafkaconsumer
A simple consumer for Azure Event Hub Kafka using Java Spring Boot.
38
A simple consumer for Azure Event Hub Kafka using Java Spring Boot.
services:
consumer:
image: programecomguedes/javaspringboot-azureeventhub-kafkaconsumer
ports:
- "8082:8082"
environment:
- SPRING_PROFILES_ACTIVE=prd
- KAFKA_BOOTSTRAP_SERVERS={EVENT_HUB_NAMESPACE}.servicebus.windows.net:9093
- KAFKA_SASL_JAAS_CONFIG=org.apache.kafka.common.security.plain.PlainLoginModule required username="\$\ConnectionString" password="{EVENT_HUB_CONNECTION_STRING}";
- KAFKA_TOPIC_NAME={TOPIC_NAME}
- GROUP_ID={GROUP_ID_NAME}
Note:
EVENT_HUB_NAMESPACE
and EVENT_HUB_CONNECTION_STRING
to your Azure Event Hub namespace name and Azure Event Hubs connection string respectively.TOPIC_NAME
and GROUP_ID_NAME
to your Azure Event Hub name and Azure Consumer Group respectively.Execute the following command:
docker compose up
Note: Only if you don't have a kafka host configured
docker network create kafka_network
Note: You can use your own kafka host
services:
zookeeper:
image: docker.io/bitnami/zookeeper:3.9
ports:
- "2181:2181"
environment:
- ALLOW_ANONYMOUS_LOGIN=yes
networks:
- kafka_network
kafka:
image: 'bitnami/kafka:3.4'
ports:
- '9092:9092'
environment:
- KAFKA_CFG_ZOOKEEPER_CONNECT=zookeeper:2181
- KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://kafka:9092
depends_on:
- zookeeper
networks:
- kafka_network
networks:
kafka_network:
external: true
Execute:
docker compose -f docker-compose-kakfa.yml up -d
services:
consumer:
image: programecomguedes/javaspringboot-azureeventhub-kafkaconsumer:latest
ports:
- "8082:8082"
environment:
- SPRING_PROFILES_ACTIVE=local
- KAFKA_BOOTSTRAP_SERVERS={KAFKA_HOST} # e.g: localhost:9092
- KAFKA_TOPIC_NAME={TOPIC_NAME} # e.g: testtopic
- GROUP_ID={GROUP_ID} # e.g: testgroup
networks:
- kafka_network
networks:
kafka_network:
external: true
Execute:
docker compose -f docker-compose-consumer.yml up
docker pull programecomguedes/javaspringboot-azureeventhub-kafkaconsumer