version: '3'
services:
zoo1:
image: wurstmeister/zookeeper
restart: always
hostname: zoo1
container_name: zoo1
ports:
- "2181:2181"
volumes:
- "./zoo1/data:/data"
- "./zoo1/datalog:/datalog"
environment:
ZOO_MY_ID: 1
ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888:3888
zoo2:
image: wurstmeister/zookeeper
restart: always
hostname: zoo2
container_name: zoo2
ports:
- "2180:2181"
volumes:
- "./zoo2/data:/data"
- "./zoo2/datalog:/datalog"
environment:
ZOO_MY_ID: 2
ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888:3888
kafka4:
image: wurstmeister/kafka
restart: always
hostname: kafka4
container_name: kafka4
ports:
- "9093:9092"
environment:
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://192.168.1.18:9093
KAFKA_ADVERTISED_HOST_NAME: 192.168.1.18
KAFKA_ZOOKEEPER_CONNECT: zoo1:2181,zoo2:2180
volumes:
- ./kafka4/logs:/kafka
external_links:
- zoo1
- zoo2
kafka5:
image: wurstmeister/kafka
restart: always
hostname: kafka5
container_name: kafka5
ports:
- "9094:9092"
environment:
KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://192.168.1.18:9094
KAFKA_ADVERTISED_HOST_NAME: 192.168.1.18
KAFKA_ZOOKEEPER_CONNECT: zoo1:2181,zoo2:2180
volumes:
- ./kafka5/logs:/kafka
external_links:
- zoo1
- zoo2
kafka-manager:
image: sheepkiller/kafka-manager:latest
restart: always
container_name: kafa-manager
hostname: kafka-manager
ports:
- "9002:9000"
links: # 连接本compose文件创建的container
- kafka4
- kafka5
external_links: # 连接本compose文件以外的container
- zoo1
- zoo2
environment:
ZK_HOSTS: zoo1:2181,zoo2:2180
KAFKA_BROKERS: kafka4:9093,kafka5:9094
APPLICATION_SECRET: letmein
KM_ARGS: -Djava.net.preferIPv4Stack=true
利用docker来对kafka进行集群部署
最新推荐文章于 2024-06-03 19:29:05 发布