Docker部署Kafka

目录

新版Kafka直接基于Kraft,无需再使用zookeeper。

通过Docker进行部署,ADVERTISED_LISTENERS必须设置外部连接Kafka broker的地址,

本机部署时设置为localhost,服务器部署时设置为服务器宿主机ip地址

注意

部署前需修改启动脚本中的KAFKA_ADVERTISED_LISTENERS的IP为实际部署主机的外网可访问IP:

bash 复制代码
-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://xx.xx.xx.xx:9092 \

启动Kafka容器

startup.sh

bash 复制代码
#! /bin/bash
# 创建网络
docker network create --driver bridge kafka_network

# 启动Kafka
docker run -it -d \
-p 9092:9092 \
--name kafka \
--network kafka_network \
--restart always \
-e KAFKA_NODE_ID=1 \
-e KAFKA_PROCESS_ROLES=broker,controller \
-e KAFKA_LISTENERS=PLAINTEXT://:9092,CONTROLLER://:9093 \
-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://xx.xx.xx.xx:9092 \
-e KAFKA_CONTROLLER_LISTENER_NAMES=CONTROLLER \
-e KAFKA_LISTENER_SECURITY_PROTOCOL_MAP=PLAINTEXT:PLAINTEXT,CONTROLLER:PLAINTEXT \
-e KAFKA_CONTROLLER_QUORUM_VOTERS=1@localhost:9093 \
-e KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR=1 \
-e KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR=1 \
-e KAFKA_TRANSACTION_STATE_LOG_MIN_ISR=1 \
-e KAFKA_GROUP_INITIAL_REBALANCE_DELAY_MS=0 \
-e KAFKA_NUM_PARTITIONS=3 \
apache/kafka:3.9.0

删除Kafka容器

bash 复制代码
docker rm -f kafka

参考:
https://blog.csdn.net/weixin_62799021/article/details/143242822

相关推荐
The star"'1 分钟前
docker
docker·云计算
Lynnxiaowen2 分钟前
今天我们开始学习Docker概述与安装
linux·学习·docker·容器·云计算
笨手笨脚の3 分钟前
Kafka-4 Kafka 中的消费者
分布式·kafka·消息队列·消费者·重平衡
野生技术架构师4 分钟前
Kafka深度剖析:Topic-Partition-Segment 关系、分区策略与数据可靠性实现
kafka·c#·linq
Lee-Aiya7 分钟前
MacBook M4芯片 Arm64架构 基于docker安装Oracle 19c
macos·docker·oracle·arm
吃喝不愁霸王餐APP开发者8 分钟前
外卖霸王餐用户画像标签系统:Spark SQL批处理+Kafka流处理混合计算
sql·spark·kafka
曦云沐9 分钟前
Docker双模式实战:从零到精通,Dockerfile与Docker Compose全方位构建部署
docker
风逸柏9 分钟前
dockerfile说明
docker·容器
p***434814 分钟前
后端在消息系统中的顺序保证
数据库·数据仓库·docker
你好龙卷风!!!18 分钟前
mac上安x86minio的docker版的
运维·docker·容器