Skip to content

Commit 342c1ed

Browse files
Docker support for nebula (opea-project#1396)
Signed-off-by: siddhivelankar23 <[email protected]>
1 parent 7a26282 commit 342c1ed

File tree

2 files changed

+464
-0
lines changed

2 files changed

+464
-0
lines changed
Lines changed: 352 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,352 @@
1+
# Copyright (C) 2025 Intel Corporation
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
version: '3.4'
5+
services:
6+
metad0:
7+
image: docker.io/vesoft/nebula-metad:nightly
8+
environment:
9+
USER: root
10+
TZ: "${TZ}"
11+
command:
12+
- --meta_server_addrs=metad0:9559,metad1:9559,metad2:9559
13+
- --local_ip=metad0
14+
- --ws_ip=metad0
15+
- --port=9559
16+
- --ws_http_port=19559
17+
- --data_path=/data/meta
18+
- --log_dir=/logs
19+
- --v=0
20+
- --minloglevel=0
21+
healthcheck:
22+
test: ["CMD", "curl", "-sf", "http://metad0:19559/status"]
23+
interval: 30s
24+
timeout: 10s
25+
retries: 3
26+
start_period: 20s
27+
ports:
28+
- 9559
29+
- 19559
30+
- 19560
31+
volumes:
32+
- ./data/meta0:/data/meta
33+
- ./logs/meta0:/logs
34+
networks:
35+
- nebula-net
36+
restart: on-failure
37+
cap_add:
38+
- SYS_PTRACE
39+
40+
metad1:
41+
image: docker.io/vesoft/nebula-metad:nightly
42+
environment:
43+
USER: root
44+
TZ: "${TZ}"
45+
command:
46+
- --meta_server_addrs=metad0:9559,metad1:9559,metad2:9559
47+
- --local_ip=metad1
48+
- --ws_ip=metad1
49+
- --port=9559
50+
- --ws_http_port=19559
51+
- --data_path=/data/meta
52+
- --log_dir=/logs
53+
- --v=0
54+
- --minloglevel=0
55+
healthcheck:
56+
test: ["CMD", "curl", "-sf", "http://metad1:19559/status"]
57+
interval: 30s
58+
timeout: 10s
59+
retries: 3
60+
start_period: 20s
61+
ports:
62+
- 9559
63+
- 19559
64+
- 19560
65+
volumes:
66+
- ./data/meta1:/data/meta
67+
- ./logs/meta1:/logs
68+
networks:
69+
- nebula-net
70+
restart: on-failure
71+
cap_add:
72+
- SYS_PTRACE
73+
74+
metad2:
75+
image: docker.io/vesoft/nebula-metad:nightly
76+
environment:
77+
USER: root
78+
TZ: "${TZ}"
79+
command:
80+
- --meta_server_addrs=metad0:9559,metad1:9559,metad2:9559
81+
- --local_ip=metad2
82+
- --ws_ip=metad2
83+
- --port=9559
84+
- --ws_http_port=19559
85+
- --data_path=/data/meta
86+
- --log_dir=/logs
87+
- --v=0
88+
- --minloglevel=0
89+
healthcheck:
90+
test: ["CMD", "curl", "-sf", "http://metad2:19559/status"]
91+
interval: 30s
92+
timeout: 10s
93+
retries: 3
94+
start_period: 20s
95+
ports:
96+
- 9559
97+
- 19559
98+
- 19560
99+
volumes:
100+
- ./data/meta2:/data/meta
101+
- ./logs/meta2:/logs
102+
networks:
103+
- nebula-net
104+
restart: on-failure
105+
cap_add:
106+
- SYS_PTRACE
107+
108+
storaged0:
109+
image: docker.io/vesoft/nebula-storaged:nightly
110+
environment:
111+
USER: root
112+
TZ: "${TZ}"
113+
command:
114+
- --meta_server_addrs=metad0:9559,metad1:9559,metad2:9559
115+
- --local_ip=storaged0
116+
- --ws_ip=storaged0
117+
- --port=9779
118+
- --ws_http_port=19779
119+
- --data_path=/data/storage
120+
- --log_dir=/logs
121+
- --v=0
122+
- --minloglevel=0
123+
depends_on:
124+
- metad0
125+
- metad1
126+
- metad2
127+
healthcheck:
128+
test: ["CMD", "curl", "-sf", "http://storaged0:19779/status"]
129+
interval: 30s
130+
timeout: 10s
131+
retries: 3
132+
start_period: 20s
133+
ports:
134+
- 9779
135+
- 19779
136+
- 19780
137+
volumes:
138+
- ./data/storage0:/data/storage
139+
- ./logs/storage0:/logs
140+
networks:
141+
- nebula-net
142+
restart: on-failure
143+
cap_add:
144+
- SYS_PTRACE
145+
146+
storaged1:
147+
image: docker.io/vesoft/nebula-storaged:nightly
148+
environment:
149+
USER: root
150+
TZ: "${TZ}"
151+
command:
152+
- --meta_server_addrs=metad0:9559,metad1:9559,metad2:9559
153+
- --local_ip=storaged1
154+
- --ws_ip=storaged1
155+
- --port=9779
156+
- --ws_http_port=19779
157+
- --data_path=/data/storage
158+
- --log_dir=/logs
159+
- --v=0
160+
- --minloglevel=0
161+
depends_on:
162+
- metad0
163+
- metad1
164+
- metad2
165+
healthcheck:
166+
test: ["CMD", "curl", "-sf", "http://storaged1:19779/status"]
167+
interval: 30s
168+
timeout: 10s
169+
retries: 3
170+
start_period: 20s
171+
ports:
172+
- 9779
173+
- 19779
174+
- 19780
175+
volumes:
176+
- ./data/storage1:/data/storage
177+
- ./logs/storage1:/logs
178+
networks:
179+
- nebula-net
180+
restart: on-failure
181+
cap_add:
182+
- SYS_PTRACE
183+
184+
storaged2:
185+
image: docker.io/vesoft/nebula-storaged:nightly
186+
environment:
187+
USER: root
188+
TZ: "${TZ}"
189+
command:
190+
- --meta_server_addrs=metad0:9559,metad1:9559,metad2:9559
191+
- --local_ip=storaged2
192+
- --ws_ip=storaged2
193+
- --port=9779
194+
- --ws_http_port=19779
195+
- --data_path=/data/storage
196+
- --log_dir=/logs
197+
- --v=0
198+
- --minloglevel=0
199+
depends_on:
200+
- metad0
201+
- metad1
202+
- metad2
203+
healthcheck:
204+
test: ["CMD", "curl", "-sf", "http://storaged2:19779/status"]
205+
interval: 30s
206+
timeout: 10s
207+
retries: 3
208+
start_period: 20s
209+
ports:
210+
- 9779
211+
- 19779
212+
- 19780
213+
volumes:
214+
- ./data/storage2:/data/storage
215+
- ./logs/storage2:/logs
216+
networks:
217+
- nebula-net
218+
restart: on-failure
219+
cap_add:
220+
- SYS_PTRACE
221+
222+
graphd:
223+
image: docker.io/vesoft/nebula-graphd:nightly
224+
environment:
225+
USER: root
226+
TZ: "${TZ}"
227+
command:
228+
- --meta_server_addrs=metad0:9559,metad1:9559,metad2:9559
229+
- --port=9669
230+
- --local_ip=graphd
231+
- --ws_ip=graphd
232+
- --ws_http_port=19669
233+
- --log_dir=/logs
234+
- --v=0
235+
- --minloglevel=0
236+
depends_on:
237+
- storaged0
238+
- storaged1
239+
- storaged2
240+
healthcheck:
241+
test: ["CMD", "curl", "-sf", "http://graphd:19669/status"]
242+
interval: 30s
243+
timeout: 10s
244+
retries: 3
245+
start_period: 20s
246+
ports:
247+
- "9669:9669"
248+
- 19669
249+
- 19670
250+
volumes:
251+
- ./logs/graph:/logs
252+
networks:
253+
- nebula-net
254+
restart: on-failure
255+
cap_add:
256+
- SYS_PTRACE
257+
258+
graphd1:
259+
image: docker.io/vesoft/nebula-graphd:nightly
260+
environment:
261+
USER: root
262+
TZ: "${TZ}"
263+
command:
264+
- --meta_server_addrs=metad0:9559,metad1:9559,metad2:9559
265+
- --port=9669
266+
- --local_ip=graphd1
267+
- --ws_ip=graphd1
268+
- --ws_http_port=19669
269+
- --log_dir=/logs
270+
- --v=0
271+
- --minloglevel=0
272+
depends_on:
273+
- storaged0
274+
- storaged1
275+
- storaged2
276+
healthcheck:
277+
test: ["CMD", "curl", "-sf", "http://graphd1:19669/status"]
278+
interval: 30s
279+
timeout: 10s
280+
retries: 3
281+
start_period: 20s
282+
ports:
283+
- 9669
284+
- 19669
285+
- 19670
286+
volumes:
287+
- ./logs/graph1:/logs
288+
networks:
289+
- nebula-net
290+
restart: on-failure
291+
cap_add:
292+
- SYS_PTRACE
293+
294+
graphd2:
295+
image: docker.io/vesoft/nebula-graphd:nightly
296+
environment:
297+
USER: root
298+
TZ: "${TZ}"
299+
command:
300+
- --meta_server_addrs=metad0:9559,metad1:9559,metad2:9559
301+
- --port=9669
302+
- --local_ip=graphd2
303+
- --ws_ip=graphd2
304+
- --ws_http_port=19669
305+
- --log_dir=/logs
306+
- --v=0
307+
- --minloglevel=0
308+
depends_on:
309+
- storaged0
310+
- storaged1
311+
- storaged2
312+
healthcheck:
313+
test: ["CMD", "curl", "-sf", "http://graphd2:19669/status"]
314+
interval: 30s
315+
timeout: 10s
316+
retries: 3
317+
start_period: 20s
318+
ports:
319+
- 9669
320+
- 19669
321+
- 19670
322+
volumes:
323+
- ./logs/graph2:/logs
324+
networks:
325+
- nebula-net
326+
restart: on-failure
327+
cap_add:
328+
- SYS_PTRACE
329+
330+
console:
331+
image: docker.io/vesoft/nebula-console:nightly
332+
entrypoint: ""
333+
command:
334+
- sh
335+
- -c
336+
- |
337+
for i in `seq 1 60`;do
338+
var=`nebula-console -addr graphd -port 9669 -u root -p nebula -e 'ADD HOSTS "storaged0":9779,"storaged1":9779,"storaged2":9779'`;
339+
if [[ $$? == 0 ]];then
340+
break;
341+
fi;
342+
sleep 1;
343+
echo "retry to add hosts.";
344+
done && tail -f /dev/null;
345+
346+
depends_on:
347+
- graphd
348+
networks:
349+
- nebula-net
350+
351+
networks:
352+
nebula-net:

0 commit comments

Comments
 (0)