gpt4 book ai didi

docker - 使用 Docker Compose 和 spotify/kafka 启动 Kafka 主题?

转载 作者:行者123 更新时间:2023-12-02 02:17:47 25 4
gpt4 key购买 nike

我正在尝试将 Kafka 主题连接到我的前端 Java Spring 应用程序。我正在利用 Docker Compose 并尝试使用两个不同的 Kafka 镜像进行连接。

wurstmeister/kafka我已经能够通过此服务在我的 docker.compose.yml 中启动并运行 Kafka 主题。文件。但我无法将创建的主题连接到我的前端 Java Spring 应用程序。

kafka:
image: wurstmeister/kafka:0.10.2.0
ports:
- "9092:9092"
expose:
- "9092"
- "2181"
environment:
KAFKA_ADVERTISED_HOST_NAME: localhost
KAFKA_CREATE_TOPICS: "test-topic1:1:1, test-topic2:1:1"
KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
volumes:
- /var/run/docker.sock:/var/run/docker.sock
depends_on:
- zookeeper

其次,与 spotify/kafka ,我在使用 Kafka 创建主题时遇到了困难。在文档中,它正在寻找主题作为环境变量,但以下 docker-compose.yml服务不是创建主题。我还尝试在 test-topic 周围加上引号但这并不奏效。

kafka:
image: spotify/kafka
ports:
- "9092:9092"
- "2181:2181"
hostname: kafka
expose:
- "9092"
- "2181"
environment:
TOPICS: test-topic

我不知道这是否有必要,但是我的整个docker-compose.yml文件如下,注意只有使用wurstmeister/kafka时才需要zookeeper服务.

<强> docker-compose.yml

version: '2'
services:
# zookeeper:
# image: wurstmeister/zookeeper
# ports:
# - "2181:2181"
kafka:
image: spotify/kafka
ports:
- "9092:9092"
- "2181:2181"
hostname: kafka
expose:
- "9092"
- "2181"
environment:
TOPICS: test-topic
redis:
image: redis
ports:
- "6379"
restart: always
kafka-websocket-connector:
build: ./kafka-websocket-connector
image: andrewterra/kafka-websocket-connector
ports:
- "8077:8077"
# - "9092:9092"
depends_on:
- kafka
- redis
# - zookeeper
links:
- kafka
- redis

最佳答案

相当晚,但您可以使用类似以下内容的 shell 脚本来创建您的主题:

command: >
bash -c
"(sleep 15s &&
/opt/kafka_2.11-0.10.1.0/bin/kafka-topics.sh
--create
--zookeeper
localhost:2181 --replication-factor 1 --partitions 1
--topic my_topic &) && (supervisord -n)"

关于docker - 使用 Docker Compose 和 spotify/kafka 启动 Kafka 主题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45549133/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com