当前位置: 首页 > news >正文

Docker部署kafka,Docker所在宿主机以外主机访问

# 安装启动zookeeper

docker run -d --name zookeeper --publish 2181:2181 --volume /etc/localtime:/etc/localtime zookeeper:latest


--network 指定的网络
-p:设置映射端口(默认2181)
-d:后台启动


# 启动kafka

docker run -d --name kafka  -p 9092:9092 --link zookeeper -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.78.129:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092  wurstmeister/kafka


参数说明:
–link 用于容器直接的互通。
-e KAFKA_BROKER_ID=0 一个 kafka节点 就是一个 broker。一个集群由多个 broker 组成。一个 broker可以容纳多个 topic
-e KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181 配置zookeeper管理kafka的路径
-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://139.226.179.239:9092 把kafka的地址端口注册给zookeeper,若远程访问要改成外网IP,千万注意是外网IP,很多文章只说是宿主机IP, 演示例子上写的是内网IP,很容易被误导
-e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 配置kafka的监听端口
-v /etc/localtime:/etc/localtime 容器时间同步虚拟机的时间


# 安装启动可视化管理界面

docker run -d --name kafka-map  -p 9001:8080  -v /opt/kafka-map/data:/usr/local/kafka-map/data  -e DEFAULT_USERNAME=admin  -e DEFAULT_PASSWORD=admin  dushixiang/kafka-map:latest

访问:
http://192.168.78.129:9001

添加192.168.78.129:9092

外部客户端访问使用这个192.168.78.129:9092

测试:

//新开docker终端
1创建主题

docker exec -it kafka /bin/bash
cd /opt/kafka/bin
./kafka-topics.sh --create --topic test-kafka --bootstrap-server localhost:9092

//新开docker终端
2消费者

docker exec -it kafka /bin/bash
cd /opt/kafka/bin
./kafka-console-consumer.sh --topic test-kafka --from-beginning --bootstrap-server localhost:9092

//新开docker终端
3生产者
 

docker exec -it kafka /bin/bash
cd /opt/kafka/bin
./kafka-console-producer.sh --topic test-kafka --bootstrap-server localhost:9092

http://www.lryc.cn/news/405361.html

相关文章:

  • 控制欲过强的Linux小进程
  • ​探讨元宇宙和VR虚拟现实之间的区别​
  • Docker Desktop安装
  • 《Towards Black-Box Membership Inference Attack for Diffusion Models》论文笔记
  • vscode调试nextjs前端后端程序、nextjs api接口
  • 《SeTformer Is What You Need for Vision and Language》
  • [保姆级教程]uniapp安装使用uViewUI教程
  • 网络安全法规对企业做等保有哪些具体规定?
  • Java开发中超好用Orika属性映射工具
  • qt初入门8:下拉框,输入框模糊查询,提示简单了解 (借助QCompleter)
  • 【qt】VS中如何配置Qt环境
  • 对于相同网段的IP,部分无法ping通问题
  • Unity发布XR中用于worldbuilding的全新电子书
  • Vue3相比于Vue2进行了哪些更新
  • Unity UGUI 之 Slider
  • 这7款高效爬虫工具软件,非常实用!
  • 【OJ】二叉树相关OJ题
  • Blender中保存透明图片
  • MySQL之索引优化
  • Spring Boot 与 Amazon S3:快速上传与下载文件的完整指南
  • 细节剖析:HTTP与HTTPS在安全性、性能等方面的不同!
  • MySQL面试篇章——MySQL索引
  • WSL 2 Oracle Linux 9.1 安装配置
  • MySQL日志文件详解
  • MySQL零散拾遗(三)
  • 鸿蒙 使用 Refresh 实现下拉刷新
  • 【JavaScript 算法】图的遍历:理解图的结构
  • Ubuntu 中默认的 root 用户密码
  • Rust编程-高级特性
  • JavaRegexImprove练习(1) (2024.7.22)