1.添加subnet
docker network create —driver bridge —subnet 172.30.0.0/16 kafka
2.编写docker-compose.yml
version: "3.4"services:zoo1:image: zookeeper:3.4restart: alwayshostname: zoo1container_name: zoo1ports:- 2184:2181volumes:- ./kafka/zkcluster/zoo1/data:/data- ./kafka/zkcluster/zoo1/datalog:/datalogenvironment:ZOO_MY_ID: 1ZOO_SERVERS: server.1=0.0.0.0:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888networks:kafka:ipv4_address: 172.30.0.11zoo2:image: zookeeper:3.4restart: alwayshostname: zoo2container_name: zoo2ports:- 2185:2181volumes:- ./kafka/zkcluster/zoo2/data:/data- ./kafka/zkcluster/zoo2/datalog:/datalogenvironment:ZOO_MY_ID: 2ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=0.0.0.0:2888:3888 server.3=zoo3:2888:3888networks:kafka:ipv4_address: 172.30.0.12zoo3:image: zookeeper:3.4restart: alwayshostname: zoo3container_name: zoo3ports:- 2186:2181volumes:- ./kafka/zkcluster/zoo3/data:/data- ./kafka/zkcluster/zoo3/datalog:/datalogenvironment:ZOO_MY_ID: 3ZOO_SERVERS: server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=0.0.0.0:2888:3888networks:kafka:ipv4_address: 172.30.0.13kafka1:image: wurstmeister/kafkarestart: alwayshostname: kafka1container_name: kafka1privileged: trueports:- 9092:9092environment:KAFKA_ADVERTISED_HOST_NAME: kafka1KAFKA_LISTENERS: PLAINTEXT://kafka1:9092KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka1:9092KAFKA_ADVERTISED_PORT: 9092KAFKA_ZOOKEEPER_CONNECT: zoo1:2181,zoo2:2181,zoo3:2181volumes:- ./kafka/kafkaCluster/kafka1/logs:/kafkanetworks:kafka:ipv4_address: 172.30.1.11extra_hosts:- "zoo1:172.30.0.11"- "zoo2:172.30.0.12"- "zoo3:172.30.0.13"depends_on:- zoo1- zoo2- zoo3external_links:- zoo1- zoo2- zoo3kafka2:image: wurstmeister/kafkarestart: alwayshostname: kafka2container_name: kafka2privileged: trueports:- 9093:9093environment:KAFKA_ADVERTISED_HOST_NAME: kafka2KAFKA_LISTENERS: PLAINTEXT://kafka2:9093KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka2:9093KAFKA_ADVERTISED_PORT: 9093KAFKA_ZOOKEEPER_CONNECT: zoo1:2181,zoo2:2181,zoo3:2181volumes:- ./kafka/kafkaCluster/kafka2/logs:/kafkanetworks:kafka:ipv4_address: 172.30.1.12extra_hosts:- "zoo1:172.30.0.11"- "zoo2:172.30.0.12"- "zoo3:172.30.0.13"depends_on:- zoo1- zoo2- zoo3external_links:- zoo1- zoo2- zoo3kafka3:image: wurstmeister/kafkarestart: alwayshostname: kafka3container_name: kafka3privileged: trueports:- 9094:9094environment:KAFKA_ADVERTISED_HOST_NAME: kafka3KAFKA_LISTENERS: PLAINTEXT://kafka3:9094KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka3:9094KAFKA_ADVERTISED_PORT: 9094KAFKA_ZOOKEEPER_CONNECT: zoo1:2181,zoo2:2181,zoo3:2181volumes:- ./kafka/kafkaCluster/kafka3/logs:/kafkanetworks:kafka:ipv4_address: 172.30.1.13extra_hosts:- "zoo1:172.30.0.11"- "zoo2:172.30.0.12"- "zoo3:172.30.0.13"depends_on:- zoo1- zoo2- zoo3external_links:- zoo1- zoo2- zoo3networks:kafka:external:name: kafka
3.启动容器
docker-compose up -d
