This repository was archived by the owner on Sep 9, 2025. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
130 lines (130 loc) · 3.43 KB
/
docker-compose.yml
File metadata and controls
130 lines (130 loc) · 3.43 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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
version: '3.8'
services:
# common_db for all the organizations
# (in production, every org should have its own db, but this is more convenient for bootstrapping this prototype)
common_db:
image: mongo:latest
environment:
- MONGO_INITDB_ROOT_USERNAME="admin"
- MONGO_INITDB_ROOT_PASSWORD="root"
ports:
- 27017:27017
volumes:
- common_db_data_container:/data/db
# common_frontend for all the organizations
# (same as db)
common_frontend:
build: ./frontend
image: nsix/frontend_service
ports:
- "5000:3000"
stdin_open: true
tty: true
# Blockchain
ganache-blockchain:
build: ./ganache
ports:
- 8545:8545
stdin_open: true
tty: true
# Organizations SLC
buyer_slc:
build:
context: slc
dockerfile: Dockerfile
image: nsix/slc_service
environment:
- ROLE=BUYER
ports:
- "3000:3000"
seller_slc:
image: nsix/slc_service
ports:
- "3001:3000"
environment:
- ROLE=SELLER
mediator_slc:
image: nsix/slc_service
ports:
- "3002:3000"
environment:
- ROLE=MEDIATOR
device_slc:
image: nsix/slc_service
ports:
- "3003:3000"
environment:
- ROLE=DEVICE
# Organizations middlewares
buyer_middleware:
build: ./middleware
volumes:
- ./keystore/buyer.json:/api/keypair.json
image: nsix/middleware_service
ports:
- "4000:3000"
environment:
- ROLE=BUYER
seller_middleware:
image: nsix/middleware_service
volumes:
- ./keystore/seller.json:/api/keypair.json
ports:
- "4001:3000"
environment:
- ROLE=SELLER
mediator_middleware:
image: nsix/middleware_service
volumes:
- ./keystore/mediator.json:/api/keypair.json
ports:
- "4002:3000"
environment:
- ROLE=MEDIATOR
device_middleware:
image: nsix/middleware_service
volumes:
- ./keystore/device.json:/api/keypair.json
ports:
- "4003:3000"
environment:
- ROLE=DEVICE
# Organizations engines
buyer_engine:
build: ./engines/buyer
image: nsix/buyer_engine_service
volumes:
- ./keystore/buyer.json:/api/keypair.json
ports:
- "6000:3000"
environment:
- ROLE=BUYER
seller_engine:
build: ./engines/seller
image: nsix/seller_engine_service
volumes:
- ./keystore/seller.json:/api/keypair.json
ports:
- "6001:3000"
environment:
- ROLE=SELLER
mediator_engine:
build: ./engines/mediator
image: nsix/mediator_engine_service
volumes:
- ./keystore/mediator.json:/api/keypair.json
ports:
- "6002:3000"
environment:
- ROLE=MEDIATOR
device_engine:
build: ./engines/device
image: nsix/device_engine_service
volumes:
- ./keystore/device.json:/api/keypair.json
ports:
- "6003:3000"
environment:
- ROLE=DEVICE
volumes:
common_db_data_container: