schema-registry-ui
This is a web tool for the confluentinc/schema-registry in order to create / view / search / evolve / view history & configure Avro schemas of your Kafka cluster.
Live Demo
schema-registry-ui.landoop.com
Prerequisites
You will need schema-registry installed with CORS enabled.
In order to enable CORS, add in /opt/confluent-3.x.x/etc/schema-registry/schema-registry.properties
access.control.allow.methods=GET,POST,PUT,OPTIONS
access.control.allow.origin=*
And then restart the [schema-registry] service
Get the set up locally
We also provide the schema-registry and schema-registry-ui as part of the fast-data-dev docker image for local development setup that also gives all the relevant backends. Just run:
docker run -d --name=fast-data-dev -p 8081:8081 landoop/fast-data-dev
Checkout more about fast-data-dev docker container here
Running it via Docker
To run it via the provided docker image:
docker pull landoop/schema-registry-ui
docker run --rm -p 8000:8000 \
-e "SCHEMAREGISTRY_URL=http://confluent-schema-registry-host:port" \
landoop/schema-registry-ui
Please see the docker readme for more information and how to enable various features or avoid CORS issues via the proxy flag.
Build from source
git clone https://github.com/Landoop/schema-registry-ui.git
cd schema-registry-ui
npm install
npm start
Web UI will be available at http://localhost:8080
Nginx config
If you use nginx
to serve this ui, let angular manage routing with
location / {
try_files $uri $uri/ /index.html =404;
root /folder-with-schema-registry-ui/;
}
Setup Schema Registry clusters
Use multiple schema registry clusters in env.js
:
var clusters = [
{
NAME:"prod",
// Schema Registry service URL (i.e. http://localhost:8081)
SCHEMA_REGISTRY: "http://localhost:8081", // https://schema-registry.demo.landoop.com
COLOR: "#141414" // optional
},
{
NAME:"dev",
SCHEMA_REGISTRY: "http://localhost:8383",
COLOR: "red", // optional
allowGlobalConfigChanges: true, // optional
//allowTransitiveCompatibilities: true // if using a Confluent Platform release >= 3.1.1 uncomment this line
}
];
- Use
COLOR
to set different header colors for each set up cluster. - Use
allowGlobalConfigChanges
to enable configuring Global Compatibility Level from the UI. - Use
allowTransitiveCompatibilities
to enable transitive compatibility levels. This is supported in SR >= 3.1.1 - Use
allowSchemaDeletion
to enable schema deletion from the UI. This is supported in SR >= 3.3.0
Changelog
License
The project is licensed under the BSL license.
Relevant Projects
- kafka-topics-ui, UI to browse Kafka data and work with Kafka Topics
- kafka-connect-ui, Set up and manage connectors for multiple connect clusters
- fast-data-dev, Docker for Kafka developers (schema-registry,kafka-rest,zoo,brokers,landoop)
- Landoop-On-Cloudera, Install and manage your kafka streaming-platform on you Cloudera CDH cluster