1+ version : " 3.4"
2+
3+ services :
4+
5+ db :
6+ build : db
7+
8+ py-srv :
9+ build : py-srv
10+ healthcheck :
11+ test : " exit 0"
12+ command : sh -c "/wait && python app.py"
13+ environment :
14+ - WAIT_HOSTS=db:1433,es1:9200,es2:9200,es3:9200
15+ - WAIT_HOSTS_TIMEOUT=300
16+ - WAIT_SLEEP_INTERVAL=30
17+ - WAIT_HOST_CONNECT_TIMEOUT=30
18+ depends_on :
19+ - db
20+ - es1
21+ - es2
22+ - es3
23+ - kibana
24+ links :
25+ - " db:db"
26+ - " es1:es1"
27+ - " es2:es2"
28+ - " es3:es3"
29+
30+ es1 :
31+ image : elasticsearch:${STACK_VERSION}
32+ container_name : es1
33+ hostname : es1
34+ restart : unless-stopped
35+ healthcheck :
36+ test : " exit 0"
37+ environment :
38+ - " node.store.allow_mmap=false"
39+ - " node.name=es1"
40+ - " bootstrap.memory_lock=true"
41+ - " cluster.name=es-cluster"
42+ - " discovery.seed_hosts=es2,es3"
43+ - " cluster.initial_master_nodes=es1,es2,es3"
44+ - " ES_JAVA_OPTS=-Xms512m -Xmx512m -Des.index.number_of_replicas=0"
45+ - " xpack.security.enabled=false"
46+ - " xpack.security.http.ssl.enabled=false"
47+ - " xpack.security.transport.ssl.enabled=false"
48+ - " xpack.ml.enabled=false"
49+ - " xpack.graph.enabled=false"
50+ - " xpack.watcher.enabled=false"
51+ ulimits :
52+ memlock :
53+ soft : -1
54+ hard : -1
55+ ports :
56+ - 9200:9200
57+ # volumes:
58+ # - ./es/es1/data:/usr/share/elasticsearch/data
59+ # - ./es/es1/log:/usr/share/elasticsearch/log
60+
61+ es2 :
62+ image : elasticsearch:${STACK_VERSION}
63+ container_name : es2
64+ hostname : es2
65+ restart : unless-stopped
66+ healthcheck :
67+ test : " exit 0"
68+ environment :
69+ - " node.store.allow_mmap=false"
70+ - " node.name=es2"
71+ - " bootstrap.memory_lock=true"
72+ - " cluster.name=es-cluster"
73+ - " discovery.seed_hosts=es3,es1"
74+ - " cluster.initial_master_nodes=es1,es2,es3"
75+ - " ES_JAVA_OPTS=-Xms512m -Xmx512m -Des.index.number_of_replicas=0"
76+ - " xpack.security.enabled=false"
77+ - " xpack.security.http.ssl.enabled=false"
78+ - " xpack.security.transport.ssl.enabled=false"
79+ - " xpack.ml.enabled=false"
80+ - " xpack.graph.enabled=false"
81+ - " xpack.watcher.enabled=false"
82+ ulimits :
83+ memlock :
84+ soft : -1
85+ hard : -1
86+ ports :
87+ - 9201:9200
88+ # volumes:
89+ # - ./es/es2/data:/usr/share/elasticsearch/data
90+ # - ./es/es2/log:/usr/share/elasticsearch/log
91+
92+ es3 :
93+ image : elasticsearch:${STACK_VERSION}
94+ container_name : es3
95+ hostname : es3
96+ restart : unless-stopped
97+ healthcheck :
98+ test : " exit 0"
99+ environment :
100+ - " node.store.allow_mmap=false"
101+ - " node.name=es3"
102+ - " bootstrap.memory_lock=true"
103+ - " cluster.name=es-cluster"
104+ - " discovery.seed_hosts=es2,es1"
105+ - " cluster.initial_master_nodes=es1,es2,es3"
106+ - " ES_JAVA_OPTS=-Xms512m -Xmx512m -Des.index.number_of_replicas=0"
107+ - " xpack.security.enabled=false"
108+ - " xpack.security.http.ssl.enabled=false"
109+ - " xpack.security.transport.ssl.enabled=false"
110+ - " xpack.ml.enabled=false"
111+ - " xpack.graph.enabled=false"
112+ - " xpack.watcher.enabled=false"
113+ ulimits :
114+ memlock :
115+ soft : -1
116+ hard : -1
117+ ports :
118+ - 9202:9200
119+ # volumes:
120+ # - ./es/es3/data:/usr/share/elasticsearch/data
121+ # - ./es/es3/log:/usr/share/elasticsearch/log
122+
123+ kibana :
124+ image : kibana:${STACK_VERSION}
125+ healthcheck :
126+ test : " exit 0"
127+ environment :
128+ - " ELASTICSEARCH_HOSTS=http://es1:9200"
129+ - " SERVER_NAME=127.0.0.1"
130+ ports :
131+ - 5601:5601
132+ depends_on :
133+ - es1
134+ - es2
135+ - es3
0 commit comments