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.
schema-registry-ui.demo.lenses.io
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
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
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.
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
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/;
}
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
readonlyMode: true // 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
}
];
COLOR
to set different header colors for each set up cluster.allowGlobalConfigChanges
to enable configuring Global Compatibility Level from the UI.allowTransitiveCompatibilities
to enable transitive compatibility levels. This is supported in SR >= 3.1.1allowSchemaDeletion
to enable schema deletion from the UI. This is supported in SR >= 3.3.0readonlyMode
to prevent any configuration or schema changes from the UI. It overwrites the previous parameters (allowGlobalConfigChanges
, allowSchemaDeletion
).The project is licensed under the BSL license.
www.landoop.com