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

相关推荐
头疼的程序员1 分钟前
docker学习与使用(概念、镜像、容器、数据卷、dockerfile等)
学习·docker·容器
IT小郭.1 分钟前
使用 Docker Desktop 安装 Neo4j 知识图谱
windows·python·sql·docker·知识图谱·database·neo4j
淡水猫.1 分钟前
hbit资产收集工具Docker(笔记版)
运维·docker·容器
旧故新长9 小时前
访问 Docker 官方镜像源(包括代理)全部被“重置连接”或超时
运维·docker·容器
white.tie9 小时前
Docker部署单节点Elasticsearch
elasticsearch·docker·jenkins
火龙谷10 小时前
【hadoop】Kafka 安装部署
大数据·hadoop·kafka
日月星宿~11 小时前
【kafka】基本命令
kafka
haven-85214 小时前
win11安装Joplin Server私有化部署(docker)
运维·docker·容器
QX_hao14 小时前
【docker】--数据卷挂载
docker·容器·eureka
文静小土豆15 小时前
在K8S集群中部署EFK日志收集
docker·容器·kubernetes