在一台服务器里面通过docker-compose部署zookeeper,kafka集群

在同一台服务器里面部署zk,kafka集群

     1、首先在服务器安装docker和docker-compose环境(这里不多说)

     2、拉取zookeeper和kafka镜像到服务器上

        可以通过以下命令来查找相关的镜像

docker search   镜像名称
docker  search  zookeeper
docker search  kafka

    

     3、通过 命令docker pull  镜像名称:版本号   拉取镜像

     4、分别创建目录/zookeeper, /kafka,并在相应的目录里面新建docker-compose.yml文件

     zookeeper集群对应的docker-compose.yml文件内容

    

version: '3.1'

services:
  zoo1:
    image: zookeeper:3.5.9
    restart: always
    hostname: zoo1
    networks:
      - zoo-net
    ports:
      - 2181:2181
    volumes:
      - zoo1-data:/data
      - zoo1-log:/datalog
    environment:
      ZOO_MY_ID: 1
      ZOO_SERVERS: server.1=0.0.0.0:2888:3888;2181 server.2=zoo2:2888:3888;2181 server.3=zoo3:2888:3888;2181
      ZOO_4LW_COMMANDS_WHITELIST: "*"

  zoo2:
    image: zookeeper:3.5.9
    restart: always
    hostname: zoo2
    networks:
      - zoo-net
    ports:
      - 2182:2181
    environment:
      ZOO_MY_ID: 2
      ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=0.0.0.0:2888:3888;2181 server.3=zoo3:2888:3888;2181
      ZOO_4LW_COMMANDS_WHITELIST: "*"

  zoo3:
    image: zookeeper:3.5.9
    restart: always
    hostname: zoo3
    networks:
      - zoo-net
    ports:
      - 2183:2181
    environment:
      ZOO_MY_ID: 3
      ZOO_SERVERS: server.1=zoo1:2888:3888;2181 server.2=zoo2:2888:3888;2181 server.3=0.0.0.0:2888:3888;2181
      ZOO_4LW_COMMANDS_WHITELIST: "*"

volumes:
  zoo1-data:
    external: false
  zoo1-log:
    external: false  

networks:
  zoo-net:

 

 在目录/zookeeper下执行docker-compose up -d命令

 

  /kafka目录下的docker-compose.yml文件内容

version: '2'

services:
  kafka1:
    image: kafka:0.11.0.1
    ports:
      - "9092:9092"
    environment:
      KAFKA_ADVERTISED_HOST_NAME: 172.16.119.28     #宿主机地址              
      KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://172.16.119.28:9092    #宿主机地址
      KAFKA_ZOOKEEPER_CONNECT: 172.16.119.28:2181,172.16.119.28:2182,172.16.119.28:2183  #zk宿主机地址
      KAFKA_ADVERTISED_PORT: 9092
    container_name: kafka1
  kafka2:
    image: kafka:0.11.0.1
    ports:
      - "9093:9092"
    environment:
      KAFKA_ADVERTISED_HOST_NAME: 172.16.119.28           #宿主机地址       
      KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://172.16.119.28:9093       #宿主机地址
      KAFKA_ZOOKEEPER_CONNECT: 172.16.119.28:2181,172.16.119.28:2182,172.16.119.28:2183   #zk宿主机地址
      KAFKA_ADVERTISED_PORT: 9093
    container_name: kafka2
  kafka3:
    image: kafka:0.11.0.1
    ports:
      - "9094:9092"
    environment:
      KAFKA_ADVERTISED_HOST_NAME: 172.16.119.28    #宿主机地址
      KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://172.16.119.28:9094  #宿主机地址
      KAFKA_ZOOKEEPER_CONNECT: 172.16.119.28:2181,172.16.119.28:2182,172.16.119.28:2183  #zk宿主机地址
      KAFKA_ADVERTISED_PORT: 9094
    container_name: kafka3

 

在目录/kafka下执行docker-compose up -d命令

 

结果如下:

 

 

原文地址:https://www.cnblogs.com/braveym/p/15409988.html