docker-compose中启动kafka时设置禁止自动创建topic
时间: 2024-03-01 13:51:23 浏览: 359
在Docker Compose中启动Kafka时,可以在Kafka服务的配置中添加`KAFKA_AUTO_CREATE_TOPICS_ENABLE=false`环境变量,以禁止自动创建topic。
具体操作步骤如下:
1. 在Kafka服务的配置中添加`environment`字段,如下所示:
```
services:
kafka:
image: wurstmeister/kafka
environment:
KAFKA_AUTO_CREATE_TOPICS_ENABLE: "false"
...
```
2. 保存修改后的`docker-compose.yml`文件,并启动Kafka服务。
这样,当Kafka启动时,就不会自动创建topic了。如果需要创建新的topic,需要手动执行相应的命令。
相关问题
怎么设置在docker-compose启动kafka时创建topic
在Docker Compose中启动Kafka时,可以使用Kafka的命令行工具`kafka-topics.sh`来创建topic,并在Kafka服务的启动脚本中添加相应的命令。
具体操作步骤如下:
1. 在Kafka服务的启动脚本中添加创建topic的命令,如下所示:
```
services:
kafka:
image: wurstmeister/kafka
command:
- bash
- -c
- |
/opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties &
sleep 10
/opt/kafka/bin/kafka-topics.sh --create --zookeeper zookeeper:2181 --replication-factor 1 --partitions 1 --topic my-topic
tail -f /dev/null
```
在这个例子中,我们使用`kafka-topics.sh`命令创建了一个名为`my-topic`的topic,并且指定了`zookeeper`的地址、副本因子和分区数。
2. 保存修改后的`docker-compose.yml`文件,并启动Kafka服务。
这样,当Kafka服务启动时,就会自动创建一个名为`my-topic`的topic,并且可以开始使用它了。如果需要创建更多的topic,可以在启动脚本中添加相应的命令。
怎么设置在docker-compose启动kafka时批量创建topic
在Docker Compose中启动Kafka时,可以使用Kafka的命令行工具`kafka-topics.sh`来批量创建topic,并在Kafka服务的启动脚本中添加相应的命令。
具体操作步骤如下:
1. 在Kafka服务的启动脚本中添加批量创建topic的命令,如下所示:
```
services:
kafka:
image: wurstmeister/kafka
command:
- bash
- -c
- |
/opt/kafka/bin/kafka-server-start.sh /opt/kafka/config/server.properties &
sleep 10
/opt/kafka/bin/kafka-topics.sh --create --zookeeper zookeeper:2181 --replication-factor 1 --partitions 1 --topic topic1
/opt/kafka/bin/kafka-topics.sh --create --zookeeper zookeeper:2181 --replication-factor 1 --partitions 1 --topic topic2
/opt/kafka/bin/kafka-topics.sh --create --zookeeper zookeeper:2181 --replication-factor 1 --partitions 1 --topic topic3
tail -f /dev/null
```
在这个例子中,我们使用`kafka-topics.sh`命令批量创建了三个topic,分别是`topic1`、`topic2`和`topic3`,并且指定了`zookeeper`的地址、副本因子和分区数。
2. 保存修改后的`docker-compose.yml`文件,并启动Kafka服务。
这样,当Kafka服务启动时,就会自动创建三个topic,并且可以开始使用它们了。如果需要创建更多的topic,可以在启动脚本中添加相应的命令。
阅读全文