-
Notifications
You must be signed in to change notification settings - Fork 0
/
docker-compose.yaml
250 lines (233 loc) · 38.9 KB
/
docker-compose.yaml
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
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
version: "3.7"
networks:
fhir-poc-net:
name: fhir-poc-net
services:
payments-interoperability-layer-3pp-poc:
image: payments-interoperability-layer-3pp-poc:local
build:
context: ./payments-interoperability-layer-3pp-poc
networks:
- fhir-poc-net
container_name: payments-interoperability-layer-3pp-poc
volumes:
- "./payments-interoperability-layer-3pp-poc/config:/opt/app/dist/config"
# ports:
# - "3001:3001"
## Third-party transfer related services
inbound-thirdparty-sdk:
image: "mojaloop/thirdparty-sdk:v12.0.2"
command: sh -c "NODE_ENV=integration npm run start:inbound"
user: root
volumes:
- ./thirdparty-sdk/docker/wait4:/opt/thirdparty-sdk/wait4
environment:
- NODE_ENV=integration
- REDIS_HOST=redis-fhir-poc
networks:
- fhir-poc-net
# ports:
# - "4005:4005"
depends_on:
- redis-fhir-poc
- ml-testing-toolkit
- pisp-simulator
healthcheck:
test: wget -q http://localhost:4005/health -O /dev/null || exit 1
timeout: 3s
retries: 10
start_period: 10s
interval: 30s
outbound-thirdparty-sdk:
image: "mojaloop/thirdparty-sdk:v12.0.2"
command: sh -c "NODE_ENV=integration npm run start:outbound"
user: root
volumes:
- ./thirdparty-sdk/docker/wait4:/opt/thirdparty-sdk/wait4
environment:
- NODE_ENV=integration
- REDIS_HOST=redis-fhir-poc
networks:
- fhir-poc-net
# ports:
# - "4006:4006"
depends_on:
- redis-fhir-poc
- ml-testing-toolkit
- pisp-simulator
healthcheck:
test: wget -q http://localhost:4006/health -O /dev/null || exit 1
timeout: 3s
retries: 10
start_period: 10s
interval: 30s
sdk-scheme-adapter:
image: "mojaloop/sdk-scheme-adapter:v12.0.0"
env_file: ./thirdparty-sdk/docker/sdk_scheme_adapter.env
user: root
volumes:
- "./thirdparty-sdk/docker/secrets:/secrets"
- "./thirdparty-sdk/docker/jwsVerificationKeys:/jwsVerificationKeys"
# ports:
# - "7000:4000"
# - "7002:4001"
networks:
- fhir-poc-net
depends_on:
- redis-fhir-poc
- ml-testing-toolkit
restart: always
redis-fhir-poc:
image: "redis:6.2.4-alpine"
networks:
- fhir-poc-net
# ports:
# - "6379:6379"
restart: always
ml-testing-toolkit:
image: mojaloop/ml-testing-toolkit:v13.5.0
user: root
volumes:
- "./thirdparty-sdk/docker/contract/ml-testing-toolkit/spec_files:/opt/mojaloop-testing-toolkit/spec_files"
- "./thirdparty-sdk/docker/contract/ml-testing-toolkit/secrets:/opt/mojaloop-testing-toolkit/secrets"
environment:
TTK_OBJECT_STORE_INIT_CONFIG: |-
{
"partyInfo" : {
"provisionedParties": [
{
"displayName": "Care Hospitals",
"firstName": "Care",
"lastName": "Hospitals",
"middleName": "H",
"dateOfBirth": "1970-01-01",
"idType": "MSISDN",
"idValue": "987654321"
}
]
}
}
ports:
- "15050:5050"
command: npm start
networks:
- fhir-poc-net
depends_on:
- mongo
ml-testing-toolkit-ui:
image: mojaloop/ml-testing-toolkit-ui:v13.5.0
ports:
- "16060:6060"
environment:
- API_BASE_URL=http://localhost:15050
- AUTH_ENABLED=FALSE
- PAYEE_SIM_BRAND_ICON=data:image/jpeg;base64,/9j/4QAYRXhpZgAASUkqAAgAAAAAAAAAAAAAAP/sABFEdWNreQABAAQAAAA8AAD/4QMvaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49Iu+7vyIgaWQ9Ilc1TTBNcENlaGlIenJlU3pOVGN6a2M5ZCI/PiA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJBZG9iZSBYTVAgQ29yZSA1LjUtYzAyMSA3OS4xNTU3NzIsIDIwMTQvMDEvMTMtMTk6NDQ6MDAgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE0IChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpEMkUxM0ZBQkU4REYxMUU0OTkyMjhBM0NGNEYzRDBFMiIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpEMkUxM0ZBQ0U4REYxMUU0OTkyMjhBM0NGNEYzRDBFMiI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkQyRTEzRkE5RThERjExRTQ5OTIyOEEzQ0Y0RjNEMEUyIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkQyRTEzRkFBRThERjExRTQ5OTIyOEEzQ0Y0RjNEMEUyIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+/+4ADkFkb2JlAGTAAAAAAf/bAIQABgQEBAUEBgUFBgkGBQYJ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Nj5SpOMAdLGlvPGx8pUnGAOljS3njY+UqTjAHSxpbzxsfKVJxgDpY0t542PlKk4wB0saW88bHylScYA6WNLeeNj5SpOMAdLGlvPGx8pUnGAOljS3njY+UqTjAHSxpbzxsfKVJxgDpY0t542PlKk4wB0saW88bHylScYA6WNLeeNj5SpOMAdLGlvPGx8pUnGAOljS3njY+UqTjAHSxpbzxsfKVJxgDpY0t542PlKk4wB0saW88bHylScYA6WNLeeNj5SpOMAdLGlvPGx8pUnGAOljS3njY+UqTjAHSxpbzxsfKVJxgDpY0t542PlKk4wB0saW88bHylScYA6WNLeeNj5SpOMAdLGlvPGx8pUnGAOljS3njY+UqTjAHSxpbzxsfKVJxgDpY0t542PlKk4wB0saW88bHylScYA6WNLeeNj5SpOMAdLGlvPGx8pUnGAOljS3njY+UqTjAHSxpbzxsfKVJxgDpY0t542PlKk4wB0saW88bHylScYA6WNLeeNj5SpOMAdLGlvPGx8pUnGAOljS3njY+UqTjAHSxpbzxsfKVJxgDpY0t542PlKk4wB0saW88bHylScYA6WNLeeNj5SpOMAdLGlvPGx8pUnGAOljS3njY+UqTjAHSxpbzxsfKVJxgDpY0t542PlKk4wB0saW88bHylScYA6WNLeeNj5SpOMAdLGlvPGx8pUnGARrU3U3Tes03zXSUma7NU1dTZrhFT08VwpXySSPpZGsYxjZFc5znLgiJtA//9k=
command:
- sh
- /usr/share/nginx/start.sh
depends_on:
- ml-testing-toolkit
- mongo
networks:
- fhir-poc-net
mongo:
image: mongo
container_name: 3p_mongo
# ports:
# - "27017:27017"
pisp-simulator:
image: mojaloop/mojaloop-simulator:v12.0.0
networks:
- fhir-poc-net
env_file: ./thirdparty-sdk/docker/dfsp_backend.env
volumes:
- ./thirdparty-sdk/docker/dfsp_rules.json:/src/rules.json
# ports:
# - "9000:3000"
# - "9002:3002"
# - "9003:3003"
thirdparty-core-connector:
networks:
- fhir-poc-net
build:
context: ./thirdparty-sdk/thirdparty-core-connector
dockerfile: Dockerfile
environment:
- THIRDPARTY_CORE_CONNECTOR_OUTBOUND_ENDPOINT=http://outbound-thirdparty-sdk:4006
- THIRDPARTY_CORE_CONNECTOR_tempRedisConfig__host=redis-fhir-poc
# ports:
# - "3003:3003"
## OpenHIM related services
mongo-db:
image: mongo:4.0
networks:
- fhir-poc-net
# volumes:
# - "mongo-data:/data/db"
restart: unless-stopped
openhim-core:
image: jembi/openhim-core:v7.1.0
restart: unless-stopped
environment:
mongo_url: "mongodb://mongo-db/openhim-development"
mongo_atnaUrl: "mongodb://mongo-db/openhim-development"
NODE_ENV: "development"
ports:
- "18080:8080"
# - "5000:5000"
- "15001:5001"
networks:
- fhir-poc-net
healthcheck:
test: ["CMD-SHELL", "nc localhost 8080"]
interval: 5s
timeout: 10s
retries: 10
openhim-console:
image: jembi/openhim-console:v1.15.0
restart: unless-stopped
networks:
- fhir-poc-net
environment:
- SERVER_HOST_NAME=localhost
ports:
- "9080:80"
volumes:
- ./openhim/openhim-console-default.json:/usr/share/nginx/html/config/default.json
depends_on:
openhim-core:
condition: service_healthy
openhim-mediator-fhir-pil-poc:
image: openhim-mediator-fhir-pil-poc:local
build:
context: ./openhim/mediators/openhim-mediator-fhir-pil-poc
dockerfile: Dockerfile
networks:
- fhir-poc-net
environment:
- OPENHIM_MEDIATOR_FHIR_PIL_PIL_ENDPOINT=http://payments-interoperability-layer-3pp-poc:3001
- OPENHIM_MEDIATOR_FHIR_PIL_OPENHIM_CONFIG__apiURL=https://openhim-core:8080
# ports:
# - "3000:3000"
depends_on:
openhim-core:
condition: service_healthy
openhim-core-config-init:
networks:
- fhir-poc-net
image: node:16.15.0-alpine
environment:
OPENHIM_API_HOSTNAME: 'openhim-core'
OPENHIM_API_PORT: 8080
OPENHIM_API_USERNAME: '[email protected]'
OPENHIM_API_PASSWORD: 'openhim-password'
# Reject unauthorised is only needed if the OpenHIM's SSL is not setup
NODE_TLS_REJECT_UNAUTHORIZED: 0
volumes:
- "./openhim/config-importer:/opt/config-importer"
command: "node /opt/config-importer/import-script.js"
depends_on:
openhim-core:
condition: service_healthy
# volumes:
# mongo-data: