docker安装【zookeeper】【kafka】【provectuslabs/kafka-ui】记录

目录

    • 1.安装zookeeper:3.9.2-jre-17
    • 2.安装kafka:3.7.0
    • 3.安装provectuslabs/kafka-ui

  • (选做)新环境没有jdk,安装jdk-17.0.10备用
mkdir -p /export/{data,apps,logs,conf,downloads}

cd /export/downloads

curl -OLk  https://download.oracle.com/java/17/archive/jdk-17.0.10_linux-x64_bin.tar.gz

tar zxf jdk-17.0.10_linux-x64_bin.tar.gz

mv /export/downloads/jdk-17.0.10 /export/apps/

ln -s /export/apps/jdk-17.0.10 /export/apps/jdk

cat >> /etc/profile << EOF
export JAVA_HOME=/export/apps/jdk
export CLASSPATH=.:$JAVA_HOME/lib/
export PATH=.:\$JAVA_HOME/bin:\$PATH
EOF

source /etc/profile

1.安装zookeeper:3.9.2-jre-17

  • 注意修改端口映射
docker pull zookeeper:3.9.2-jre-17

sudo docker run -d --name zk --privileged -p 2181:2181 -p 2888:2888 -p 3888:3888 zookeeper:3.9.2-jre-17

2.安装kafka:3.7.0

  • 注意修改zk地址及端口
docker pull bitnami/kafka:3.7.0

docker run -d -t -p 9092:9092 --restart=always \
-e KAFKA_BROKER_ID=0 \
-e ALLOW_PLAINTEXT_LISTENER=yes \
-e KAFKA_CFG_ZOOKEEPER_CONNECT=192.168.1.30:2181 \
-e KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://192.168.1.30:9092 \
-e TZ="Asia/Shanghai" --name kafka-0 --privileged=true bitnami/kafka:3.7.0
  • 安装kafka:3.7.0参数说明
#参数说明
#docker run -d -t -p 9092:9092 --restart=always \
#-p 自己的内网 宿主机端口:容器端口

#-e KAFKA_BROKER_ID=0 \
#集群的broker的ID,该ID是集群的唯一标识,可以理解为节点ID。

#-e ALLOW_PLAINTEXT_LISTENER=yes \
#允许使用PLAINTEXT侦听器

#-e KAFKA_CFG_ZOOKEEPER_CONNECT=192.168.1.30:2181 \
#zookeeper的连接地址

#-e KAFKA_CFG_ADVERTISED_LISTENERS=PLAINTEXT://1192.168.1.30:9092 \
#kafka发布到zookeeper供客户端使用的服务地址。

#-e TZ="Asia/Shanghai" --name kafka-0 --privileged=true bitnami/kafka:3.7.0
#TZ:指定时区,这里指定亚洲上海时区,也就是东八区

#--name 给容器取个名字

#--privileged:使用该参数,container内的root拥有真正的root权限。否则,container内的root只是外部的一个普通用户权限。
  • kfk常用命令
#创建topic:kafka-topics.sh --create --bootstrap-server 192.168.1.30:9092 --replication-factor 1 --partitions 3 --topic test
#查看topic列表:kafka-topics.sh --list --bootstrap-server 192.168.1.30:9092
#单个查询topic描述:kafka-topics.sh --topic test --bootstrap-server 192.168.1.30:9092 --describe --exclude-internal
#生产消息:kafka-console-producer.sh --bootstrap-server 192.168.1.30:9092 --topic test
#消费消息:kafka-console-consumer.sh --bootstrap-server 192.168.1.30:9092 --topic test --from-beginning
#删除某条消息:kafka-delete-records.sh --bootstrap-server 192.168.1.30:9092 --offset-json-file /tmp/delete-strategy.json
#{
#  "partitions": [
#    {"topic": "test", "partition": 1, "offset": 1}
#  ],                      
#	"version":1                          
#}
#删除某主题下topic消息(超时时间设置短一些):kafka-configs.sh --zookeeper 192.168.1.30:2181 --entity-type topics --entity-name test --alter --add-config retention.ms=100
#删除topic:kafka-topics --bootstrap-server 192.168.1.30:9092 --topic test --delete
#查看消息内容:kafka-console-consumer.sh --bootstrap-server 192.168.1.30:9200 --topic test --from-beginning

3.安装provectuslabs/kafka-ui

  • 命令行方便,但是更多开发调试的时候仅限于查看,还是要有个ui工具,决定使用kfk-ui
  • kfk-ui官方地址:https://github.com/provectus/kafka-ui
  • 初次启动使用docker compose配置,注意配置端口映射和kafka集群服务器地址及端口
cat > kfkui-docker-compose.yml << EOF
version: '3.4'
services:
  kafka-ui:
    container_name: kafka-ui
    image: provectuslabs/kafka-ui:latest
    ports:
      - 9093:8080

    extra_hosts:
      - "kafka1-nonesecure:192.168.1.30"
    environment:
      KAFKA_CLUSTERS_0_NAME: kafka-cluster-0
      KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS: kafka1-nonesecure:9092
EOF

docker compose -f kfkui-docker-compose.yml up -d
  • ui效果
    在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/574810.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【VScode】VScode+如何从git上面拉取代码?

目录标题 1、打开VSCode。File>New Window。2、打开集成终端&#xff08;Terminal > New Terminal 或使用快捷键Ctrl \)。3、在终端中&#xff0c;使用Git命令克隆仓库。4、打开项目。 1、打开VSCode。File>New Window。 2、打开集成终端&#xff08;Terminal > …

基于HAL库的stm32中定时器的使用--定时器中断每隔一秒进行led灯的闪烁以及定时器生成PWM

一&#xff1a;什么是定时器 &#xff08;1&#xff09;stm32定时器&#xff0c;是存在于stm32单片机中的一个外设。stm32共有八个定时器&#xff0c;两个高级定时器&#xff08;TIM1、TIM8&#xff09;&#xff0c;四个通用定时器&#xff08;TIM2、TIM3、TIM4、TIM5&#xff…

Java中的ArrayList集合

特点&#xff1a; ArrayList中的一些方法&#xff1a; 1、add(Object element):向集合的末尾添加元素 add(int index,Object element):在列表的指定位置&#xff08;从0开始&#xff09;插入指定元素 2、size():返回列表的中的元素个数 3、get(int index):返回下标为index位置的…

基于昇腾AI 使用AscendCL实现垃圾分类和视频物体分类应用

现如今&#xff0c;人工智能迅猛发展&#xff0c;AI赋能产业发展的速度正在加快&#xff0c;“AI”的需求蜂拥而来&#xff0c;但AI应用快速落地的过程中仍存在很大的挑战&#xff1a;向下需要适配的硬件&#xff0c;向上需要完善的技术支持&#xff0c;两者缺一不可。 基于此&…

SQL中的锁

一、概述 介绍 锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中&#xff0c;除传统的计算资(CPU、RAM、I/0)的争用以外&#xff0c;数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题&#xff0c;锁冲…

02-JVM学习记录-运行时数据区

二、运行时数据区 每个JVM只有一个Runtime实例&#xff0c;只有一个运行时数据区。 虚拟机栈、堆、方法区最重要 方法区和堆与虚拟机的生命周期相同&#xff08;随虚拟机启动而创建&#xff0c;虚拟机退出而销毁&#xff09;&#xff0c;程序计数器、虚拟机栈、本地方法栈生命…

JavaScript云LIS系统概述 前端框架JQuery+EasyUI+Bootstrap医院云HIS系统源码 开箱即用

云LIS系统概述JavaScript前端框架JQueryEasyUIBootstrap医院云HIS系统源码 开箱即用 云LIS&#xff08;云实验室信息管理系统&#xff09;是一种结合了计算机网络化信息系统的技术&#xff0c;它无缝嵌入到云HIS&#xff08;医院信息系统&#xff09;中&#xff0c;用于连…

wps/word中字体安装教程

问题&#xff1a;下载的字体怎么导入wps/word wps或word中没有相应字体&#xff0c;怎么导入。其实方法很简单。 Step 1&#xff1a;下载字体 首先&#xff0c;在网上搜索自己喜欢的字体&#xff0c;然后下载到本地。字体的格式通常是.ttf 下面是我网上找的字体&#xff08…

Vue 3 路由机制详解与实践

一、路由的理解 路由是指导用户界面导航的一种机制。它通过映射 URL 到应用程序的不同视图组件来实现页面间的切换和导航。 二、路由基本切换效果 路由基本切换效果指的是当用户在应用程序中进行页面导航时&#xff0c;通过路由可以实现页面的切换&#xff0c;从而展示不同的…

[Flutter3] 记录Dio的简单封装(一)

文章目录 效果使用ResponseEntity类DioManager封装_onResponse / _onDioException 的设计Response的处理catch处理 效果 请求成功/失败/异常的日志输出效果 成功: 失败:500 失败:404 网络异常: 使用 举个使用的例子, 在调用 DioManager的时候, 直接通过返回值的状态, 来…

ESP32开发WebSocket报错TRANSPORT_WS: Sec-WebSocket-Accept not found

我的芯片是ESP32-S3&#xff0c;用ESP-IDF框架进行开发的时候&#xff0c;用官方的WebSocket的example创建了项目。然后把WebSocket连接uri替换为自己的服务器后&#xff0c;运行到esp_websocket_client_start开始连接后&#xff0c;直接报错&#xff1a; E (10615) TRANSPORT…

网络爬虫之爬虫原理

** 爬虫概述 Python网络爬虫是利用Python编程语言编写的程序&#xff0c;通过互联网爬取特定网站的信息&#xff0c;并将其保存到本地计算机或数据库中。 """ 批量爬取各城市房价走势涨幅top10和跌幅top10 """ ​ from lxml import etree impor…

AJAX——黑马头条-数据管理平台项目

1.项目介绍 功能&#xff1a; 登录和权限判断查看文章内容列表&#xff08;筛选&#xff0c;分页&#xff09;编辑文章&#xff08;数据回显&#xff09;删除文章发布文章&#xff08;图片上传&#xff0c;富文本编辑器&#xff09; 2.项目准备 技术&#xff1a; 基于Bootst…

【韩国】UE5的MetaHuman确实可以导入Blender进行编辑。

UE5的MetaHuman确实可以导入Blender进行编辑。根据网络上的信息&#xff0c;你可以将MetaHuman模型导出为FBX文件&#xff0c;然后在Blender中进行修改。修改完成后&#xff0c;你可以将其重新导入到Unreal Engine 5中4。请注意&#xff0c;当你在Blender中编辑模型时&#xff…

第12章 最佳的UI体验——Material Design实战

第12章 最佳的UI体验——Material Design实战 其实长久以来&#xff0c;大多数人都认为Android系统的UI并不算美观&#xff0c;至少没有iOS系统的美观。以至于很多IT公司在进行应用界面设计的时候&#xff0c;为了保证双平台的统一性&#xff0c;强制要求Android端的界面风格必…

使用Shell终端访问Linux

一、实验目的 1、熟悉Linux文件系统访问命令&#xff1b; 2、熟悉常用 Linux Shell的命令&#xff1b; 3、熟悉在Linux文件系统中vi编辑器的使用&#xff1b; 4、进一步熟悉虚拟机网络连接模式与参数配置&#xff01; 二、实验内容 1、使用root帐号登陆到Linux的X-windows…

artifactory配置docker本地存储库

​一、概述 本地 Docker 存储库是我们部署和托管内部 Docker 镜像的位置。实际上&#xff0c;它是一个 Docker 注册表&#xff0c;能够托管的 Docker 镜像的集合。通过本地存储库&#xff0c;你可以保存、加载、共享和管理自己的 Docker 镜像&#xff0c;而无需依赖于外部的镜像…

API提取IP

API代理作为IP代理的一项重要业务&#xff0c;在绕开地域网络限制&#xff0c;提高作业效率等方面提供强大的技术支持。它能够帮助用户快速实现软件与软件间的交流&#xff0c;无障碍连通不同应用程序逻辑开发的系统应用。API代理用途范围广泛&#xff0c;如使用API提取代理IP、…

AcWing 1264. 动态求连续区间和 ,详细讲解线段树与树状数组(Python,篇一)

本篇博客主要介绍一下什么是线段树与树状数组&#xff0c;它们的原理与结构是怎样&#xff0c;并通过实际题型来讲解&#xff0c;篇一主要讲解线段树&#xff0c;下一篇博客讲解树状数组。 线段树与树状数组的区别和特点&#xff1a; 它们的时间复杂度都是O(nlogn) 存储方式…

使用navicate演示在 PostgreSQL 中使用 for 循环语句

1、简单循环示例 do $$ beginfor cnt in 1..10 loopraise notice cnt: %, cnt;end loop; end; $$ navicate中执行 2、循环查询 do $$ declare_record record; beginfor _record in (SELECT version,description FROM flyway_schema_history ORDER BY installed_rank desc li…