在docker下部署zookeeper,
在網上查詢方法,有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啟動的狀態和屬性