Docker 部署 Kafka 可视化 Kafka-UI

前言

本文部署的Kafka-UI 是基于Docker Compose 部署 Kafka的KRaft模式,如有需要可访问下文链接
Docker Compose 部署 Kafka的KRaft模式 不用依赖 Zookeeper

此部署也适用于不是docker部署的kafka集群

1.启动 Kafka-UI 服务

1.1 kafka 来自docker安装

bash 复制代码
docker run -d \
  --name kafka-ui \
  --network root_kafka-network \
  -p 8080:8080 \
  -e KAFKA_CLUSTERS_0_NAME=local \
  -e KAFKA_CLUSTERS_0_BOOTSTRAP_SERVERS=kafka:9092 \
  -e SERVER_SERVLET_CONTEXT_PATH=/ \
  -e AUTH_TYPE=LOGIN_FORM \
  -e SPRING_SECURITY_USER_NAME=admin \
  -e SPRING_SECURITY_USER_PASSWORD=admin \
  -e JAVA_OPTS=-Dfile.encoding=UTF-8 \
  provectuslabs/kafka-ui:latest

说明:

bash 复制代码
--network root_kafka-network
使用Kafka网络名 (在kafka部署的时候没有指定项目名称,kafka-network会root_ 作为前缀)

KAFKA_CLUSTERS_0_NAME=local  自定义集群名称
KAFKA_CLUSTERS_0_BOOTSTRAP_SERVERS=kafka:9092  如有多个地址逗号分隔,比如:kafka1:9092,kafka2:9092

如需添加多个集群,按照如下格式类推
KAFKA_CLUSTERS_1_NAME=cluster01 自定义集群名称
KAFKA_CLUSTERS_1_BOOTSTRAP_SERVERS=kafka:9092  如有多个地址逗号分隔,比如:kafka1:9092,kafka2:9092

SPRING_SECURITY_USER_NAME=admin 登录的用户名
SPRING_SECURITY_USER_PASSWORD=admin 登录的密码

1.2 kafka来自任意安装

在上文的基础增加一个二进制安装的,其他的都大同小异,主要是增加容器的 hosts

bash 复制代码
docker run -d \
  --name kafka-ui \
  --network root_kafka-network \
  -p 8080:8080 \
  -e KAFKA_CLUSTERS_0_NAME=local \
  -e KAFKA_CLUSTERS_0_BOOTSTRAP_SERVERS=kafka:9092 \
  -e KAFKA_CLUSTERS_1_NAME=test \
  -e KAFKA_CLUSTERS_1_BOOTSTRAP_SERVERS=hostname01:9092,hostname02:9092 \
  -e SERVER_SERVLET_CONTEXT_PATH=/ \
  -e AUTH_TYPE=LOGIN_FORM \
  -e SPRING_SECURITY_USER_NAME=admin \
  -e SPRING_SECURITY_USER_PASSWORD=admin \
  -e JAVA_OPTS=-Dfile.encoding=UTF-8 \
  --add-host hostname01:ip01 \
  --add-host hostname02:ip02 \
  provectuslabs/kafka-ui:latest

2. 验证 Kafka-UI

2.1 查看容器,确保运行

bash 复制代码
docker ps

3.登录

http://hadoop102:8080/auth

账号和密码 都是admin

下图所示成功


至此部署完毕

相关推荐
lichenyang4531 天前
Docker 学习笔记(五):Docker Compose,用一个 YAML 启动前端、后端和 MongoDB
docker
lichenyang4531 天前
Docker 学习笔记(四):Dockerfile,把项目打成自己的镜像
docker·容器
lichenyang4531 天前
Docker 学习笔记(三):Docker 网络、bridge、子网和容器互通
docker·容器
lichenyang4531 天前
Docker 学习笔记(二):docker run 的参数到底在控制什么?
docker·容器
阿里云云原生2 天前
数据链路再精简:Kafka 如何做到“零 ETL”一键写入 Apache Iceberg?
kafka
Patrick_Wilson6 天前
从「改个端口」到 502:Next.js on k8s 的容器端口、Service 映射与 env 覆盖
docker·kubernetes·next.js
Suroy6 天前
DockerView-Go:用 Go 写一个终端 Docker 监控工具,顺便做了个 Web 仪表盘
docker
云恒要逆袭6 天前
运行你的第一个Docker容器
后端·docker·容器
宋均浩7 天前
# Docker 镜像瘦身实战:从 1.2G 到 80MB 的五个优化步骤
ci/cd·docker
程序员老赵8 天前
10 分钟部署 OpenCode:Docker 一键安装,浏览器打开就能用 AI 写代码(附完整命令与排错)
docker·容器·ai编程