在docker下部署zookeeper,

时间:2021-03-08 21:46:40

在网上查询方法,有compose文件,但是直接使用是有问题的,因为docker化的服务是虚拟出来的,所以compose文件需要修改,需要添加参数quorumListenOnAllIPs:true

首先参考http://blog.csdn.net/wwh578867817/article/details/52553785?locationNum=12  该链接的内容,因为使用的service3版本,所以修改了compose中不必要的配置,并添加虚拟网卡default_overlay。

但是检查集群报错,因为集群无法启动

后找到http://blog.csdn.net/u014284000/article/details/74508963这个博主分享的内容,在本地测试添加配置,可正常启动集群,后将配置加入到compose文件中

经过本地测试,也可正常启动,

如下是正确的compose文件

version: '3'
services:
   zoo1:
     image: zookeeper
     ports:
        - "2181:2181"
     environment:
        ZOO_MY_ID: 1
        ZOO_SERVERS: quorumListenOnAllIPs:true server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888
     networks:
     -  default_overlay
   zoo2:
     image: zookeeper
     ports:
        - "2182:2181"
     environment:
        ZOO_MY_ID: 2
        ZOO_SERVERS: quorumListenOnAllIPs:true server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888
     networks:
     -  default_overlay
   zoo3:
     image: zookeeper
     ports:
        - "2183:2181"
     environment:
        ZOO_MY_ID: 3
        ZOO_SERVERS: quorumListenOnAllIPs:true server.1=zoo1:2888:3888 server.2=zoo2:2888:3888 server.3=zoo3:2888:3888
     networks:
     -  default_overlay
networks:
  default_overlay:
    external: true



启动正常后,可正常进入到容器下查看zk启动的状态和属性

在docker下部署zookeeper,