Kafka 单机集群 Docker Compose Windows
在本文中,我们将探讨如何使用 Docker Compose 在 Windows 上创建 Kafka 单机集群。我们将使用 Docker Compose 工具来定义并运行 Kafka 服务,这将使我们能够轻松地在本地开发环境中使用 Kafka。
准备工作
在开始之前,确保已经安装了以下工具:
- Docker Desktop for Windows
- Docker Compose
如果您尚未安装这些工具,请根据官方文档进行安装。
创建 Docker Compose 文件
首先,我们需要创建一个 Docker Compose 文件来定义我们的 Kafka 服务。在您喜欢的文本编辑器中创建一个名为 docker-compose.yml
的文件,并将以下代码粘贴到文件中。
version: '3'
services:
zookeeper:
image: wurstmeister/zookeeper
ports:
- "2181:2181"
kafka:
image: wurstmeister/kafka
ports:
- "9092:9092"
environment:
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
depends_on:
- zookeeper
上述代码定义了两个服务:Zookeeper 和 Kafka。Zookeeper 是 Kafka 的依赖服务,因此我们首先启动 Zookeeper,然后启动 Kafka。
在 Kafka 服务中,我们使用了 wurstmeister/kafka 镜像,并将容器的 9092 端口映射到主机上的 9092 端口。我们还设置了两个环境变量来配置 Kafka。
KAFKA_ADVERTISED_LISTENERS
用于告知 Kafka 客户端如何连接到 Kafka 服务。KAFKA_ZOOKEEPER_CONNECT
用于指定 Zookeeper 服务的地址。
启动 Kafka 单机集群
要启动 Kafka 单机集群,打开命令提示符或 PowerShell,并导航到包含 docker-compose.yml
文件的目录。
运行以下命令来启动 Kafka 单机集群:
docker-compose up -d
这将使用 Docker Compose 启动 Zookeeper 和 Kafka 服务。加上 -d
参数可以在后台运行服务。
验证 Kafka 服务
一旦 Kafka 单机集群启动,我们可以使用 Kafka 命令行工具来验证服务是否正常工作。这些工具在 Kafka 容器中已经安装好了。
我们首先需要进入 Kafka 容器的命令行界面。使用以下命令:
docker-compose exec kafka bash
现在,我们可以运行 Kafka 命令行工具来执行各种操作。以下是一些常用的命令示例:
- 创建一个名为
test-topic
的主题:
kafka-topics.sh --create --topic test-topic --bootstrap-server localhost:9092 --partitions 1 --replication-factor 1
- 查看所有主题列表:
kafka-topics.sh --list --bootstrap-server localhost:9092
- 发布消息到
test-topic
主题:
echo "Hello, Kafka!" | kafka-console-producer.sh --topic test-topic --bootstrap-server localhost:9092
- 订阅并消费
test-topic
主题的消息:
kafka-console-consumer.sh --topic test-topic --bootstrap-server localhost:9092 --from-beginning
完成后,可以使用 exit
命令退出 Kafka 容器的命令行界面。
结论
通过使用 Docker Compose,我们可以轻松地在 Windows 上创建 Kafka 单机集群。我们定义了一个简单的 Docker Compose 文件来启动 Zookeeper 和 Kafka 服务,并使用 Kafka 命令行工具验证了服务的正常工作。
希望本文对您理解如何使用 Docker Compose 在 Windows 上创建 Kafka 单机集群有所帮助。祝您使用 Kafka 的愉快旅程!
journey
title Create Kafka Single-node Cluster with Docker Compose on Windows
section Prepare
Docker Desktop for Windows: Completed
Docker Compose: Completed
section Create Docker Compose file
Text editor: Completed
Docker Compose file: Completed
section Start Kafka Single-node Cluster
Command Prompt or PowerShell: Completed
docker-compose up -d: Completed