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安装apisix
docker·容器·apisix
ylj_dev1 天前
从 0 构建 AI Workload Platform(四):从单机工作流内核到可靠控制面
docker·postgresql·架构·golang
.柒宇.1 天前
使用 cri-docker 搭建 Kubernetes 集群完整教程(v1.36.3)
docker·容器·kubernetes·k8s集群安装
あ-1 天前
kafka broker迁移
kafka
艾伦_耶格宇1 天前
【DOCKER容器实战】-3 ElasticSearch + Kibana
elasticsearch·docker·jenkins
海兰1 天前
【 Kafka进阶5】使用 Docker 部署 Apache Kafka 集群完全指南
docker·kafka·apache
sel_91 天前
【Docker】Docker 安装与使用详解:从零搭建到日常实战
人工智能·深度学习·算法·docker
卷无止境2 天前
Windows 上丝滑开发 Python,并稳定构建 Docker 镜像
后端·python·docker
吕海洋2 天前
目前可用的docker源2026.08
运维·docker·容器
gsls2008082 天前
Penpot Docker 部署与 MCP 服务配置文档
运维·docker·容器·原型·penpot