我在/etc/ksqldb/ksql-server.properties文件中的ksqldb-server中设置了我的模式注册表,就像他们在documentation中所说的那样:
ksql.schema.registry.url=http://myipaddress:8090但是当我进入ksqldb容器时:
docker exec -it ksqldb-cli ksql http://ksqldb-server:8088我试着跑:
CREATE STREAM tracking WITH (KAFKA_TOPIC='tracking', VALUE_FORMAT='AVRO');我得到了错误:
Cannot create topic 'tracking' with format AVRO without configuring 'ksql.schema.registry.url'我也尝试过使用以下设置,即使不推荐这样做:
SET 'ksql.schema.registry.url'='http://myipaddress:8090';但仍然得到相同的错误,不确定我做错了什么。
这是我的docker-compose文件:
version: "3.3"
services:
# Kafka/Zookeeper container
divolte-kafka:
image: krisgeus/docker-kafka
restart: always
environment:
ADVERTISED_HOST: divolte-kafka
LOG_RETENTION_HOURS: 1
AUTO_CREATE_TOPICS: "false"
KAFKA_CREATE_TOPICS: tracking:4:1
ADVERTISED_LISTENERS: PLAINTEXT://divolte-kafka:9092,INTERNAL://localhost:9093
LISTENERS: PLAINTEXT://0.0.0.0:9092,INTERNAL://0.0.0.0:9093
SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,INTERNAL:PLAINTEXT
INTER_BROKER: INTERNAL
# Schema Registry
schema-registry:
image: confluentinc/cp-schema-registry:5.5.3
restart: always
depends_on:
- divolte-kafka
ports:
- 8090:8081
environment:
SCHEMA_REGISTRY_HOST_NAME: schema-registry
SCHEMA_REGISTRY_KAFKASTORE_CONNECTION_URL: divolte-kafka:2181
# ksql server
ksqldb-server:
image: confluentinc/ksqldb-server:0.20.0
restart: always
hostname: ksqldb-server
container_name: ksqldb-server
depends_on:
- divolte-kafka
ports:
- "8088:8088"
environment:
KSQL_LISTENERS: http://0.0.0.0:8088
KSQL_BOOTSTRAP_SERVERS: divolte-kafka:9092
KSQL_KSQL_LOGGING_PROCESSING_STREAM_AUTO_CREATE: "true"
KSQL_KSQL_LOGGING_PROCESSING_TOPIC_AUTO_CREATE: "true"
# ksql cli
ksqldb-cli:
image: confluentinc/ksqldb-cli:0.20.0
restart: always
container_name: ksqldb-cli
depends_on:
- divolte-kafka
- ksqldb-server
entrypoint: /bin/sh
tty: true发布于 2021-09-12 02:43:37
我已经在/etc/ksqldb/ksql-server.properties文件中的ksqldb-server中设置了
那么,您永远不会在Docker中使用此文件
您需要为它添加一个变量
KSQL_KSQL_SCHEMA_REGISTRY_URL: "schema-registry:8081"此外,您应该在注册表上使用Kafka,而不是废弃的Zookeeper,并使用属性KSQL_KAFKASTORE_BOOTSTRAP_SERVERS
https://stackoverflow.com/questions/69145272
复制相似问题