用于Windows的Docker上的Kafka-无法使用数据

问题描述 投票:0回答:1

我使用bitnami / kafka docker模板创建了一个kafka设置。多次重新创建容器后(我无法在9092上连接到Kafka),我终于使集群启动并运行。我相信这些问题是由于Docker安装在Windows而非Linux上造成的。

我当前的问题是,我无法使用kafka-python库和以下代码来使用任何消息:

from kafka import KafkaConsumer
from kafka import TopicPartition

print('Making connection.')
consumer = KafkaConsumer(bootstrap_servers='localhost:9092')

print('Assigning Topic.')
consumer.assign([TopicPartition('linuxhint', 2)])

print('Getting message.')
for message in consumer:
    print("OFFSET: " + str(message[0])+ "\t MSG: " + str(message))

代码不会失败。它显示“正在获取消息”行,并且没有完成。我尝试使用Conduktor应用程序使用同一主题,但我也做不到。 Conduktor甚至无法读取主题的数量和大小。我该如何解决?老实说,我没有任何线索。

docker apache-kafka docker-for-windows kafka-python
1个回答
0
投票

Windows和Docker都是问题。缺少完整的Kafka配置。

您需要适当地配置KAFKA_CFG_ADVERTISED_LISTENERS,并在Docker命令中公开正确的端口。

https://github.com/bitnami/bitnami-docker-kafka#accessing-kafka-with-internal-and-external-clients

© www.soinside.com 2019 - 2024. All rights reserved.