windows - 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
解决方案
我认为您问题的根源是 JHipster 应用程序和 Kafka 不在同一个 docker 网络中。因此,要实现这一点,我知道的一种方法是在其中docker-compose.yml
包含应用程序和 Kafka 配置。您也可以考虑从中导入/包含配置app.yml
以kafka.yml
避免重复。
推荐阅读
- string - Str::limit laravel
- google-photos - Google 相册 mediaItem.get 的行为与记录不符
- r - 从一个数据集中选择4个最接近的经度和纬度观测值到R中另一个数据集中的位置
- google-sheets - Google 表格查询返回 #VALUE!错误
- node.js - 如何使用本地护照 js 将用户重定向到 express js 上的不同页面?
- xml - Spring tool suite pom.xml 项目构建报错(Non-resolvable parent POM)
- bash - 如何在bash中删除现有数组中的重复元素?
- c - `fopen()` 的垃圾收集?
- nginx - 如何在 nginx ssl_client_verify 期间允许 sha1WithRSAEncryption?
- c++ - 如何提高车道检测的 CRF 阈值