lensesio / schema-registry-ui

Web tool for Avro Schema Registry |
http://lenses.io/product/features
421 stars 112 forks source link
avro kafka schema-registry

schema-registry-ui

release docker Join the chat at https://gitter.im/Landoop/support

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.demo.lenses.io

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
       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
     }
  ];

Changelog

Here

License

The project is licensed under the BSL license.

Relevant Projects

www.landoop.com