docker 部署zookeeper kafka 集群docker-composeyml 怎么写
下面是一个简单的docker-compose.yml文件,用于部署zookeeper kafka集群:
version: '3'
services:
zookeeper-1:
image: zookeeper:3.4.9
restart: always
hostname: zookeeper-1
ports:
- "2181:2181"
environment:
ZOO_MY_ID: 1
ZOO_SERVERS: server.1=zookeeper-1:2888:3888 server.2=zookeeper-2:2888:3888 server.3=zookeeper-3:2888:3888
zookeeper-2:
image: zookeeper:3.4.9
restart: always
hostname: zookeeper-2
ports:
- "2182:2181"
environment:
ZOO_MY_ID: 2
ZOO_SERVERS: server.1=zookeeper-1:2888:3888 server.2=zookeeper-2:2888:3888 server.3=zookeeper-3:2888:3888
zookeeper-3:
image: zookeeper:3.4.9
restart: always
hostname: zookeeper-3
ports:
- "2183:2181"
environment:
ZOO_MY_ID: 3
ZOO_SERVERS: server.1=zookeeper-1:2888:3888 server.2=zookeeper-2:2888:3888 server.3=zookeeper-3:2888:3888
kafka-1:
image: wurstmeister/kafka:2.11-1.1.0
restart: always
hostname: kafka-1
ports:
- "9092:9092"
environment:
KAFKA_BROKER_ID: 1
KAFKA_ZOOKEEPER_CONNECT: zookeeper-1:2181,zookeeper-2:2181,zookeeper-3:2181/kafka
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka-1:9092
KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9092
kafka-2:
image: wurstmeister/kafka:2.11-1.1.0
restart: always
hostname: kafka-2
ports:
- "9093:9092"
environment:
KAFKA_BROKER_ID: 2
KAFKA_ZOOKEEPER_CONNECT: zookeeper-1:2181,zookeeper-2:2181,zookeeper-3:2181/kafka
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka-2:9092
KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9092
kafka-3:
image: wurstmeister/kafka:2.11-1.1.0
restart: always
hostname: kafka-3
ports:
- "9094:9092"
environment:
KAFKA_BROKER_ID: 3
KAFKA_ZOOKEEPER_CONNECT: zookeeper-1:2181,zookeeper-2:2181,zookeeper-3:2181/kafka
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka-3:9092
KAFKA_LISTENERS: PLAINTEXT://0.0.0.0:9092
这个文件使用了docker-compose版本3,定义了6个服务:3个zookeeper节点和3个kafka节点。每个节点都有一个特定的主机名,端口号以及环境变量。
zookeeper节点使用了官方的zookeeper映像,并且每个节点都定义了一个独特的ID和服务器列表。
kafka节点使用了wurstmeister/kafka映像,并且每个节点都定义了一个独特的ID、zookeeper连接字符串、广告监听器和监听器。
使用docker-compose up命令启动集群。
这个docker-compose.yml文件只是一个基本的示例,可以根据需要进行修改
原文地址: https://www.cveoy.top/t/topic/cpAu 著作权归作者所有。请勿转载和采集!