使用 Docker 搭建 Kafka
1.组件
- Docker: 要想使用 Docker 来启动 kafka,开发环境提前装好 Docker 是必须的,我一般在 Ubuntu 虚拟机上进行开发测试
- Docker Compose: kafka 依赖 zookeeper,使用 docker-compose 来管理容器依赖
2.Docker 镜像
- docker image : wurstmeister/kafka
- docker-compose yml : docker-compose.yml
3.安装
创建
docker-compose yml
文件,复制官方提供的文件内容
version: '2.1'
services:
zookeeper:
image: wurstmeister/zookeeper
ports:
- "2181"
kafka:
image: wurstmeister/kafka
ports:
- "9092"
environment:
KAFKA_ADVERTISED_HOST_NAME: 192.168.5.139
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
volumes:
- /var/run/docker.sock:/var/run/docker.sock
!!! KAFKA_ADVERTISED_HOST_NAME : 填写 DockerNAT
的 IP 地址
4.构建 docker-compose
docker-compose up -d
5.启动 kafka 多节点[可选]
docker-compose scale kafka=3
6.进入容器
docker exec -it docker-compose_kafka_1 /bin/bash
7.kafka 操作
# 创建topic `test`
$KAFKA_HOME/bin/kafka-topics.sh --create --topic test --zookeeper docker-compose_zookeeper_1:2181 --replication-factor 1 --partitions 1
# 发送消息
$KAFKA_HOME/bin/kafka-console-producer.sh --topic=test --broker-list docker-compose_kafka_1:9092
# 接受消息
$KAFKA_HOME/bin/kafka-console-consumer.sh --bootstrap-server docker-compose_kafka_1:9092 --from-beginning --topic test
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于