首页 > 解决方案 > kafka 在 docker - windows - jhipster 内不可用

问题描述

我已经用 kafka 生成了一个 jhipster 应用程序。我使用 docker-compose 启动了 kafka.yml,当我启动应用程序时出现以下错误

org.springframework.context.ApplicationContextException:无法启动 bean 'org.springframework.kafka.config.internalKafkaListenerEndpointRegistry';嵌套异常是 org.apache.kafka.common.errors.TimeoutException: Timeout expired while fetching topic metadata

卡夫卡.yml

version: '2'
services:
  zookeeper:
    image: confluentinc/cp-zookeeper:5.3.0
    environment:
      ZOOKEEPER_CLIENT_PORT: 2181
      ZOOKEEPER_TICK_TIME: 2000
      ZOOKEEPER_SYNC_LIMIT: 2
    ports:
      - 2181:2181
  kafka:
    image: confluentinc/cp-kafka:5.3.0
    environment:
      KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://localhost:9092
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
      KAFKA_BROKER_ID: 2
      KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
    ports:
      - 9092:9092

码头工人撰写输出:

docker-compose -f kafka.yml up -d
docker_kafka_1 is up-to-date
docker_zookeeper_1 is up-to-date

在此处输入图像描述

标签: windowsdockerapache-kafkajhipster

解决方案


我认为您问题的根源是 JHipster 应用程序和 Kafka 不在同一个 docker 网络中。因此,要实现这一点,我知道的一种方法是在其中docker-compose.yml包含应用程序和 Kafka 配置。您也可以考虑从中导入/包含配置app.ymlkafka.yml避免重复。


推荐阅读