docker极速搭建kafka 外网可以访问-已测试

原文:https://blog.csdn.net/lblblblblzdx/article/details/80548294 

docker极速搭建kafka,测试了其他很多资料  只有这个是外网可以访问的

1. 启动zookeeper容器

docker run -d --name zookeeper -p 2181:2181 -t wurstmeister/zookeeper

 2. 启动kafka容器
docker run  -d --name kafka \
-p 9092:9092 \
-e KAFKA_BROKER_ID=0 \ 
-e KAFKA_ZOOKEEPER_CONNECT=192.168.204.128:2181 \ 
-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.204.128:9092 \
-e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092 -t wurstmeister/kafka 

这里面主要设置了4个参数

KAFKA_BROKER_ID=0               
KAFKA_ZOOKEEPER_CONNECT=192.168.204.128:2181
KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.204.128:9092
KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9092

中间两个参数的192.168.204.128改为宿主机器的IP地址,如果不这么设置,可能会导致在别的机器上访问不到kafka。

 

4. 集群搭建
使用docker命令可快速在同一台机器搭建多个kafka,只需要改变brokerId和端口

docker run -d --name kafka1 \
-p 9093:9093 \
-e KAFKA_BROKER_ID=1 \
-e KAFKA_ZOOKEEPER_CONNECT=192.168.204.128:2181 \
-e KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://192.168.204.128:9093 \
-e KAFKA_LISTENERS=PLAINTEXT://0.0.0.0:9093 -t wurstmeister/kafka
做个记录 以免丢失

Docker搭建Kafka可以按照以下步骤进行: 1. 安装DockerDocker Compose:首先确保你的系统已经安装DockerDocker Compose。可以在Docker官方网站上找到安装指南。 2. 创建一个Docker Compose文件:创建一个名为`docker-compose.yml`的文件,并添加以下内容: ```yaml version: '2' services: zookeeper: image: confluentinc/cp-zookeeper:latest ports: - "2181:2181" environment: ZOOKEEPER_CLIENT_PORT: 2181 networks: - kafka-net kafka: image: confluentinc/cp-kafka:latest ports: - "9092:9092" environment: KAFKA_BROKER_ID: 1 KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092 KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1 depends_on: - zookeeper networks: - kafka-net networks: kafka-net: ``` 这个Compose文件定义了一个包含Zookeeper和Kafka服务的Docker网络。 3. 启动Kafka集群:在终端里,进入包含`docker-compose.yml`文件的目录,并运行以下命令启动Kafka集群: ``` docker-compose up -d ``` 这将会从Docker Hub下载Kafka和Zookeeper的镜像,并启动两个容器。 4. 测试Kafka:使用Kafka命令行工具进行测试。首先,进入到一个新的终端窗口,并运行以下命令进入Kafka容器: ``` docker exec -it <kafka_container_id> /bin/bash ``` 注意将`<kafka_container_id>`替换为实际的Kafka容器ID。然后,运行以下命令创建一个名为`test`的主题: ``` kafka-topics --create --topic test --bootstrap-server localhost:9092 --partitions 1 --replication-factor 1 ``` 接下来,可以使用生产者和消费者来发送和接收消息。在新的终端窗口中,进入到Kafka容器,并运行以下命令启动一个生产者: ``` kafka-console-producer --topic test --bootstrap-server localhost:9092 ``` 在另一个终端窗口中,进入到Kafka容器,并运行以下命令启动一个消费者: ``` kafka-console-consumer --topic test --bootstrap-server localhost:9092 --from-beginning ``` 现在,你可以在生产者终端窗口中输入消息,并在消费者终端窗口中看到消息被消费。 这样,你就成功在Docker搭建Kafka集群。可以根据你的需求进行配置和扩展。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值