GithubHelp home page GithubHelp logo

kuguobing / debezium-ui Goto Github PK

View Code? Open in Web Editor NEW

This project forked from debezium/debezium-ui

0.0 0.0 0.0 2.01 MB

A web UI for Debezium; Please log issues at https://issues.redhat.com/browse/DBZ.

Home Page: https://debezium.io

License: Apache License 2.0

JavaScript 2.62% Shell 0.09% CSS 2.42% TypeScript 62.86% HTML 0.08% Java 31.47% Dockerfile 0.45%

debezium-ui's Introduction

License Maven Central Build Status User chat Developer chat Google Group Stack Overflow

Copyright Debezium Authors. Licensed under the Apache License, Version 2.0.

Debezium UI

WEB UI SAMPLE

Debezium is an open source distributed platform for change data capture (CDC).

This repository contains a web-based UI for Debezium, allowing to configure Debezium connectors in an intuitive way, control their lifecycle, and more. The Debezium UI is a standalone web application, which connects to Kafka Connect via its REST API.

This project is under active development, any contributions are very welcome.

Prerequisites

Debezium UI needs a properly running Debezium instance version 1.4.0.Beta1 or newer and running DB instances, depending on what connectors you are going to use (Postgres, Mongo DB, MySQL, etc).

DEV Infrastructure with Docker-Compose

You can setup a running DEV infrastructure with Zookeeper, Kafka, Debezium, Postgres and Mongo DB using docker-compose:

## optionally make sure you have the latest images:
$ docker-compose pull

Pulling dbzui-zookeeper ... done
Pulling dbzui-db-mongo  ... done
Pulling dbzui-db-mysql  ... done
Pulling debezium-ui_mongo-initializer_1 ... done
Pulling dbzui-kafka     ... done
Pulling dbzui-db-pg     ... done
Pulling dbzui-connect   ... done

## start containers
$ docker-compose up -d

Creating dbzui-db-mysql  ... done
Creating dbzui-db-pg     ... done
Creating dbzui-zookeeper ... done
Creating dbzui-db-mongo  ... done
Creating debezium-ui_mongo-initializer_1 ... done
Creating dbzui-kafka     ... done
Creating dbzui-connect   ... done

Debezium UI will be available on http://localhost:8080
Kafka Connect REST API with Debezium will be available on local port 8083.
Postgres will be available on local port 65432.
MySQL will be available on local port 63306.
Mongo DB will be availaible after ~20 seconds on local port 37017 (connect via mongo -u debezium -p dbz --authenticationDatabase admin localhost:37017/inventory) Kafka will be available on local port 9092.

## later stop containers:
$ docker-compose down

Stopping dbzui-connect   ... done
Stopping dbzui-kafka     ... done
Stopping dbzui-zookeeper ... done
Stopping dbzui-db-mongo  ... done
Stopping debezium-ui_mongo-initializer_1 ... done
Stopping dbzui-db-pg     ... done
Stopping dbzui-db-mysql  ... done
Removing dbzui-connect   ... done
Removing dbzui-kafka     ... done
Removing dbzui-zookeeper ... done
Removing dbzui-db-mongo  ... done
Removing debezium-ui_mongo-initializer_1 ... done
Removing dbzui-db-pg     ... done
Removing dbzui-db-mysql  ... done
Removing network debezium-ui_dbzui-network

Build

The entire application (UI and backend) can be built via Maven:

mvn clean install

The UI part is an SPA application based on the React framework. It is packaged as JAR, whose contents are then exposed by the Quarkus-based backend application.

Backend

The UI backend is a Quarkus application located under backend. You can run it in development mode like so:

mvn -pl backend compile quarkus:dev

Swagger UI can be accessed from: http://localhost:8080/swagger-ui/

NOTE: Launching the backend via the mvn command above will utilize the existing frontend UI jar.
The UI will be available at: http://localhost:8080/.
If you have local frontend changes which need to be included, you can rebuild just the frontend first like so:

mvn -pl ui install

UI Development

The UI frontend code is located under the ui folder. See the UI README for more information about UI development.

Contributing

The Debezium community welcomes anyone that wants to help out in any way, whether that includes reporting problems, helping with documentation, or contributing code changes to fix bugs, add tests, or implement new features. See this document for details.

debezium-ui's People

Contributors

indraraj avatar mdrillin avatar rk3rn3r avatar uidoyen avatar gunnarmorling avatar brbrown25 avatar raphaelauv avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.