-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
55 lines (50 loc) · 1.3 KB
/
Copy pathdocker-compose.yml
File metadata and controls
55 lines (50 loc) · 1.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# A three-node raftkv cluster on a single docker network.
#
# Each node runs its raft RPC on port 9000 (intra-cluster, on a private
# network) and its client KV RPC on 91xx (mapped to the host).
#
# curl /dev/null # raftkv talks gRPC, see proto/kv.proto for the schema.
services:
raft0:
build: .
container_name: raftkv-0
command:
- --node-id=0
- --peers=0@raft0:9000,1@raft1:9000,2@raft2:9000
- --raft-listen=0.0.0.0:9000
- --kv-listen=0.0.0.0:9100
- --data-dir=/data/node-0
networks: [raft]
ports: ["9100:9100"]
volumes: ["raft0-data:/data"]
raft1:
build: .
container_name: raftkv-1
command:
- --node-id=1
- --peers=0@raft0:9000,1@raft1:9000,2@raft2:9000
- --raft-listen=0.0.0.0:9000
- --kv-listen=0.0.0.0:9100
- --data-dir=/data/node-1
networks: [raft]
ports: ["9101:9100"]
volumes: ["raft1-data:/data"]
raft2:
build: .
container_name: raftkv-2
command:
- --node-id=2
- --peers=0@raft0:9000,1@raft1:9000,2@raft2:9000
- --raft-listen=0.0.0.0:9000
- --kv-listen=0.0.0.0:9100
- --data-dir=/data/node-2
networks: [raft]
ports: ["9102:9100"]
volumes: ["raft2-data:/data"]
networks:
raft:
driver: bridge
volumes:
raft0-data:
raft1-data:
raft2-data: