docker-compose部署kafka
时间: 2023-09-10 14:12:38 浏览: 81
以下是使用docker-compose部署Kafka的步骤:
1. 创建docker-compose.yml文件
在项目的根目录下创建一个docker-compose.yml文件,并在其中添加以下配置:
```
version: '3'
services:
zookeeper:
image: wurstmeister/zookeeper
ports:
- "2181:2181"
kafka:
image: wurstmeister/kafka
ports:
- "9092:9092"
environment:
KAFKA_ADVERTISED_HOST_NAME: localhost
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
```
其中,我们使用了wurstmeister/kafka和wurstmeister/zookeeper的镜像来启动Kafka和Zookeeper。我们将Zookeeper的端口映射到本地的2181端口,Kafka的端口映射到本地的9092端口。此外,我们还设置了Kafka的advertised host name和Zookeeper的连接信息。
2. 启动Kafka
在终端中进入到项目的根目录,使用以下命令启动Kafka:
```
docker-compose up
```
这会启动Zookeeper和Kafka两个容器,并在终端中输出相关日志信息。
3. 测试Kafka
使用Kafka的命令行工具来测试Kafka是否可用。在终端中输入以下命令:
```
docker exec -it <kafka_container_id> /bin/bash
```
其中,<kafka_container_id>是Kafka容器的ID。使用以下命令列出Kafka中的所有topic:
```
/opt/kafka/bin/kafka-topics.sh --list --bootstrap-server localhost:9092
```
如果Kafka正常工作,应该会列出Kafka中的所有topic。
4. 关闭Kafka
要关闭Kafka,只需在终端中按Ctrl+C即可。此外,您还可以使用以下命令停止Kafka:
```
docker-compose down
```
这会停止Kafka和Zookeeper两个容器,并将它们从本地系统中删除。
阅读全文