docker安装kafka3.0
时间: 2025-02-20 17:39:54 浏览: 58
### 使用Docker安装Kafka 3.0教程
#### 准备工作
确保已安装 Docker 并能够正常运行容器。对于 Kafka 版本 3.0 及以上,在某些部署场景下不再强制依赖 ZooKeeper,引入了 KRaft (Kafka Raft MetaData) 模式来替代传统的 ZooKeeper 协调机制[^3]。
#### 配置环境
创建一个新的项目文件夹用于存放所有的配置文件和服务定义:
```bash
mkdir kafka-docker && cd kafka-docker
```
#### 编写 `docker-compose.yml` 文件
为了简化操作流程,可以利用 `docker-compose` 工具一次性启动多个服务实例。下面是一个适用于 Kafka 3.0 的基础版 `docker-compose.yml` 文件示例,这里假设采用的是 Kraft 模式而非传统ZooKeeper模式:
```yaml
version: '3'
services:
broker-1:
image: confluentinc/cp-kafka:7.2.0 # 确认此版本支持Kafka 3.0及以上特性
hostname: broker-1
ports:
- "9092:9092"
environment:
KAFKA_NODE_ID: 1
KAFKA_PROCESS_ROLES: controller,broker
KAFKA_CONTROLLER_LISTENER_NAMES: CONTROLLER
KAFKA_LISTENERS: PLAINTEXT://broker-1:29092,CONTROLLER://broker-1:9093
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://localhost:9092
KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
KAFKA_LOG_DIRS: /var/lib/kafka/data
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
KAFKA_TRANSACTION_STATE_LOG_MIN_ISR: 1
KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR: 1
KAFKA_JMX_PORT: 9101
KAFKA_METRIC_REPORTERS: io.confluent.metrics.reporter.ConfluentMetricsReporter
KAFKA_CONFLUENT_LICENSE_topic.replication.factor: 1
KAFKA_CONFLUENT_BALANCER_ENABLE: false
KAFKA_AUTO_CREATE_TOPICS_ENABLE: true
volumes:
- ./data/broker-1:/var/lib/kafka/data
```
上述配置中指定了单节点Broker作为controller角色,并开放必要的端口以便外部访问。注意调整 `image:` 字段中的镜像标签以匹配最新的稳定发行版[^4]。
#### 启动服务
保存好 `docker-compose.yml` 文件之后,在命令行执行如下指令即可初始化并启动整个集群:
```bash
docker-compose up -d
```
这将会以后台守护进程的方式启动所有指定的服务组件。可以通过 `docker ps` 查看当前正在运行的容器状态;也可以通过 `docker logs <container_name>` 来查看特定容器的日志输出情况。
阅读全文
相关推荐

















