Add schema registry to Kafka tools
This commit is contained in:
@@ -20,21 +20,45 @@ TIP: To start the containers in the foreground simply add `-d` to the start comm
|
||||
=== Control Center UI
|
||||
Runs a https://docs.confluent.io/platform/current/control-center/index.html[Confluent Control Center] that exposes a UI at http://locahost:9021.
|
||||
|
||||
NOTE: It is expected that the brokers are already running
|
||||
NOTE: The scripts must be chained together as the UI depends on the brokers
|
||||
|
||||
To start the Control Center run the following command:
|
||||
To start the brokers and the Control Center UI run the following command:
|
||||
[source,shell]
|
||||
----
|
||||
docker-compose -f ./control-center-ui.yml up
|
||||
docker-compose -f ./kafka-cluster.yml -f ./control-center-ui.yml up
|
||||
----
|
||||
To stop the Control Center run the following command:
|
||||
To stop the brokers and the Control Center UI run the following command:
|
||||
[source,shell]
|
||||
----
|
||||
docker-compose -f ./control-center-ui.yml down
|
||||
docker-compose -f ./kafka-cluster.yml -f ./control-center-ui.yml down
|
||||
----
|
||||
|
||||
TIP: The scripts can be chained together to start both cluster and UI in a single command
|
||||
=== Schema Registry
|
||||
Runs a https://docs.confluent.io/platform/current/schema-registry/index.html[Confluent Schema Registry] available at http://locahost:8081.
|
||||
|
||||
NOTE: The scripts must be chained together as the schema registry depends on the brokers
|
||||
|
||||
To start the brokers and the schema registry run the following command:
|
||||
[source,shell]
|
||||
----
|
||||
docker-compose -f kafka-cluster.yml -f ./control-center-ui.yml up`
|
||||
docker-compose -f ./kafka-cluster.yml -f ./schema-registry.yml up
|
||||
----
|
||||
To stop the brokers and the schema registry run the following command:
|
||||
[source,shell]
|
||||
----
|
||||
docker-compose -f ./kafka-cluster.yml -f ./schema-registry.yml down
|
||||
----
|
||||
|
||||
=== All The Things
|
||||
The scripts can be chained together to start the cluster, UI and schema registry with the following commmand:
|
||||
[source,shell]
|
||||
----
|
||||
docker-compose -f kafka-cluster.yml -f ./control-center-ui.yml -f ./schema-registry.yml up
|
||||
----
|
||||
Likewise, to stop all the things:
|
||||
[source,shell]
|
||||
----
|
||||
docker-compose -f kafka-cluster.yml -f ./control-center-ui.yml -f ./schema-registry.yml down
|
||||
----
|
||||
|
||||
TIP: The only "UI" representation of the schema registry is by navigating to a `Topic` and then clicking the `Schema` tab for the topic
|
||||
@@ -21,7 +21,7 @@ services:
|
||||
#CONTROL_CENTER_CONNECT_CONNECT-DEFAULT_CLUSTER: 'connect:8083'
|
||||
#CONTROL_CENTER_KSQL_KSQLDB1_URL: "http://ksqldb-server:8088"
|
||||
#CONTROL_CENTER_KSQL_KSQLDB1_ADVERTISED_URL: "http://localhost:8088"
|
||||
#CONTROL_CENTER_SCHEMA_REGISTRY_URL: "http://schema-registry:8081"
|
||||
CONTROL_CENTER_SCHEMA_REGISTRY_URL: "http://schema-registry:8081"
|
||||
CONTROL_CENTER_REPLICATION_FACTOR: 1
|
||||
CONTROL_CENTER_INTERNAL_TOPICS_PARTITIONS: 1
|
||||
CONTROL_CENTER_MONITORING_INTERCEPTOR_TOPIC_PARTITIONS: 1
|
||||
|
||||
22
tools/kafka/docker-compose/schema-registry.yml
Normal file
22
tools/kafka/docker-compose/schema-registry.yml
Normal file
@@ -0,0 +1,22 @@
|
||||
version: '2'
|
||||
|
||||
# Runs a Confluent Schema Registry instance on 'http://localhost:8081'.
|
||||
#
|
||||
# Pre-requisites: The brokers are already running.
|
||||
|
||||
services:
|
||||
schema-registry:
|
||||
image: confluentinc/cp-schema-registry:7.0.1
|
||||
hostname: schema-registry
|
||||
container_name: schema-registry
|
||||
depends_on:
|
||||
- broker1
|
||||
- broker2
|
||||
- broker3
|
||||
ports:
|
||||
- "8081:8081"
|
||||
environment:
|
||||
SCHEMA_REGISTRY_HOST_NAME: schema-registry
|
||||
SCHEMA_REGISTRY_KAFKASTORE_BOOTSTRAP_SERVERS: 'broker1:29091,broker2:29092,broker3:29093'
|
||||
SCHEMA_REGISTRY_LISTENERS: http://0.0.0.0:8081
|
||||
SCHEMA_REGISTRY_LOG4J_ROOT_LOGLEVEL: WARN
|
||||
Reference in New Issue
Block a user