Kafka Connect UI
This is a small docker image for Landoop's kafka-connect-ui.
It serves the kafka-connect-ui from port 8000 by default.
A live version can be found at https://kafka-connect-ui.landoop.com
The software is stateless and the only necessary option is your Kafka Connect
docker run --rm -it -p 8000:8000 \ -e "CONNECT_URL=http://connect.distributed.url" \ landoop/kafka-connect-ui
Visit http://localhost:8000 to see the UI.
CONNECT_URL can be a comma separated array of Connect worker
Additionally you can assign custom names to your Connect clusters by appending
a semicolon and the cluster name after the endpoint URL. E.g:
"CONNECT_URL=http://connect.1.url;dev cluster,http://connect.2.url;production cluster".
Important: For the
CONNECT_URLyou have to use an IP address or a domain
that can be resolved to it. You can't use
localhosteven if you serve
Connect's REST port from your localhost. The reason for this is that a docker
container has its own network, so your localhost is different from the
container's localhost. As an example, if you are in your home network and
have an IP address of
192.168.5.65and run Connect from your computer,
http://127.0.1:8083you must use
Kafka Connect UI
The only option for the UI, is the URL(s) of your Connect cluster(s).
As an example, if you have a connect cluster at http://10.0.0.1:8083 and you
want to name dev cluster you would set:
-e "CONNECT_URL=http://10.0.0.1:8083,dev cluster"
Whether to proxy Connect endpoints via the internal webserver. This option
is by default set to
trueas older versions of Connect do not support CORS,
so there isn't another way to make the UI work. If you have a recent Connect
(0.11 or 1.0) and permit CORS, you can disable the proxying feature.
Whether to accept self-signed certificates when proxying Connect via https.
The port number to use for kafka-connect-ui. The default is
Usually the main reason for using this is when you run the
--net=host, where you can't use docker's publish
The webserver that powers the image is Caddy. Via this variable
you can add options that will be appended to its configuration
(Caddyfile). Variables than span multiple lines are supported.
As an example, you can set Caddy to not apply timeouts via:
-e "CADDY_OPTIONS=timeouts none"
Or you can set basic authentication via:
-e "CADDY_OPTIONS=basicauth / [USER] [PASS]"
Kafka Connect Configuration
If you don't wish to proxy Connect's REST api, you should permit CORS via setting
In the latest iterations, the container will print informational messages during
startup at stderr and web server logs at stdout. This way you may sent the logs
(stdout) to your favorite log management solution.