记录一次云服务器使用docker搭建kafka的过程

创建网络

一定要将zookeeper注册中心与kafka建在一个network中,不然在springboot 集成 kakfa的demo测试代码中进行消息发送时会超时,报错: E x c e p t i o n t h r o w n w h e n s e n d i n g a m e s s a g e w i t h k e y = ' n u l l ' Exception thrown when sending a message with key='null' Exceptionthrownwhensendingamessagewithkey='null'

bash 复制代码
docker network create zk-ka-net

docker启动zookeeper注册中心

bash 复制代码
docker pull wurstmeister/zookeeper
bash 复制代码
docker run -d --name zookeeper --network zk-ka-net -p 2181:2181 -t wurstmeister/zookeeper

docker启动kafka服务

bash 复制代码
docker pull wurstmeister/kafka
bash 复制代码
docker run -d --name kafka -p 9092:9092 --network zk-ka-net --link zookeeper:zookeeper -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://外网ip:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 wurstmeister/kafka

基本使用

  1. 进入容器
bash 复制代码
docker exec -it ${CONTAINER ID} /bin/bash
  1. 进入kafka的bin目录下
bash 复制代码
echo $PATH
cd /opt/kafka/bin
  1. 创建topic
bash 复制代码
kafka-topics.sh --create --zookeeper zookeeper:2181 --replication-factor 1 --partitions 1 --topic my_topic
  1. 运行生产者
bash 复制代码
kafka-console-producer.sh --broker-list 外网ip:9092 --topic my_topic

6.消费topic

bash 复制代码
kafka-console-consumer.sh --bootstrap-server 外网ip:9092 --from-beginning --topic my_topic

springboot 集成 kakfa代码:https://github.com/ZYNORl/project-demo/tree/main

附带一个本地启动的docker命令
bash 复制代码
docker run -d --name kafka -p 9092:9092 --link zookeeper:zookeeper -e KAFKA_BROKER_ID=0 -e KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181 -e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://127.0.0.1:9092 -e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 wurstmeister/kafka
相关推荐
阿正的梦工坊9 小时前
Registry是什么意思?镜像仓库
docker
一诺加油鸭10 小时前
若依后端系统集成 Swagger 接口文档功能
java·开发语言
云烟成雨TD10 小时前
Spring AI Alibaba 1.x 系列【40】多智能体核心模式 - 智能体作为工具(Agent as Tool)
java·人工智能·spring
测试员周周11 小时前
【踩坑系列3】飞书机器人集体“失联“?3 个 Gateway 进程让我差点崩溃!一个测试老兵的排查实录
java·python
aq553560011 小时前
Laravel9.x新特性全解析
java·开发语言·数据库
亦暖筑序11 小时前
AI 客服系统升级实战:多 Agent 路由 + 多轮记忆 + 敏感词过滤
java·后端
亚空间仓鼠11 小时前
Kubernetes技术入门与实践(二):常用命令
云原生·容器·kubernetes
zhangzeyuaaa11 小时前
深入理解 Python GIL:从机制到释放时机
java·网络·python
阿丰资源11 小时前
基于SpringBoot的房产销售系统设计与实现(附源码+数据库+文档,一键运行)
数据库·spring boot·后端
aLTttY11 小时前
Spring Boot整合AI大模型实现智能问答系统实战
人工智能·spring boot·后端