-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathbento.env
474 lines (387 loc) · 18.1 KB
/
bento.env
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
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
# BentoV2 Environment Variables
# Sourcing order
# 1. default_config.env (declare some defaults for configurable variables / make them exist)
# 2. local.env (overrides for default config)
# 3. bento.env (uses some local.env values)
# 4. local.env *again* (overrides for bento.env values, e.g. versions)
# 5. bento_post_config.bash (script, rather than .env, for branching decisions based on environment)
BENTOV2_PUBLIC_URL=https://${BENTOV2_DOMAIN}
BENTOV2_PUBLIC_URL_TRAILING_SLASH=${BENTOV2_PUBLIC_URL}/
BENTOV2_PORTAL_PUBLIC_URL=https://${BENTOV2_PORTAL_DOMAIN}
BENTOV2_PORTAL_PUBLIC_URL_TRAILING_SLASH=${BENTOV2_PORTAL_PUBLIC_URL}/
BENTOV2_AUTH_PUBLIC_URL=https://${BENTOV2_AUTH_DOMAIN}
BENTO_CBIOPORTAL_PUBLIC_URL=https://${BENTOV2_CBIOPORTAL_DOMAIN}
BENTO_AUTHZ_SERVICE_URL=${BENTOV2_PUBLIC_URL}/api/authorization/
BENTO_CORS_ORIGINS="${BENTOV2_PUBLIC_URL};${BENTOV2_PORTAL_PUBLIC_URL}"
BENTO_HEALTHCHECK_TIMEOUT=5s
BENTO_HEALTHCHECK_INTERVAL=5m
# Faster interval for services while they're starting:
BENTO_HEALTHCHECK_START_PERIOD=75s
BENTO_HEALTHCHECK_START_INTERVAL=5s
BENTO_STD_SERVICE_INTERNAL_PORT=5000
# Certificates
# The following are defined in default_config.env/local.env:
# - BENTOV2_CERTS_DIR
# - BENTOV2_AUTH_CERTS_DIR
# - BENTOV2_GATEWAY_CERTS_DIR
BENTOV2_GATEWAY_INTERNAL_CERTS_DIR=/usr/local/openresty/nginx/certs
# Gateway
BENTOV2_GATEWAY_IMAGE=ghcr.io/bento-platform/bento_gateway
BENTOV2_GATEWAY_VERSION=0.13.2
BENTOV2_GATEWAY_VERSION_DEV=${BENTOV2_GATEWAY_VERSION}-dev
BENTOV2_GATEWAY_CONTAINER_NAME=${BENTOV2_PREFIX}-gateway
BENTOV2_GATEWAY_PUBLIC_ALLOW_FRAME_DOMAINS="${BENTOV2_DOMAIN} *.${BENTOV2_DOMAIN}"
BENTOV2_GATEWAY_MEM_LIM=1G
BENTOV2_GATEWAY_CPUS=2
# Internal identity provider
# - Keycloak IdP - 'auth'
BENTOV2_AUTH_IMAGE=ghcr.io/bento-platform/bento_keycloak_dist
BENTOV2_AUTH_VERSION=2024.11.22
BENTOV2_AUTH_CONTAINER_NAME=${BENTOV2_PREFIX}-auth
BENTO_AUTH_NETWORK=${BENTOV2_PREFIX}-auth-net
BENTOV2_AUTH_SERVICE_HOST=0.0.0.0
BENTOV2_AUTH_INTERNAL_PORT=8443
BENTOV2_AUTH_INTERNAL_PORT_PLAIN_HTTP=8080
BENTOV2_AUTH_VOL_DIR=${BENTO_FAST_DATA_DIR}/auth/data
BENTOV2_AUTH_WELLKNOWN_PATH=/realms/${BENTOV2_AUTH_REALM}/.well-known/openid-configuration
BENTOV2_AUTH_REDIRECT_AFTER_LOGOUT_PATH=/realms/${BENTOV2_AUTH_REALM}/protocol/openid-connect/logout
BENTO_OPENID_CONFIG_URL="${BENTOV2_AUTH_PUBLIC_URL}${BENTOV2_AUTH_WELLKNOWN_PATH}"
# KEYCLOAK_USER_ID=
BENTOV2_AUTH_LOGIN_REDIRECT_PATH=/*
BENTOV2_AUTH_MEM_LIM=1G
BENTOV2_AUTH_CPUS=2
# - Keycloak Postgres DB - 'auth-db'
BENTO_AUTH_DB_IMAGE=postgres
BENTO_AUTH_DB_VERSION=13
BENTO_AUTH_DB_CONTAINER_NAME=${BENTOV2_PREFIX}-auth-db
BENTO_AUTH_DB="auth"
BENTO_AUTH_DB_USER="auth_user"
# BENTO_AUTH_DB_PASSWORD is set in local.env
BENTO_AUTH_DB_NETWORK="${BENTOV2_PREFIX}-auth-db-net"
# Authz - authorization service
# - Authz service
BENTO_AUTHZ_IMAGE=ghcr.io/bento-platform/bento_authorization_service
BENTO_AUTHZ_VERSION=0.10.2
BENTO_AUTHZ_VERSION_DEV=${BENTO_AUTHZ_VERSION}-dev
BENTO_AUTHZ_CONTAINER_NAME=${BENTOV2_PREFIX}-authz
BENTO_AUTHZ_NETWORK=${BENTOV2_PREFIX}-authz-net
BENTO_AUTHZ_INTERNAL_PORT=5000
BENTO_AUTHZ_MEM_LIM=1G
# - Authz database
BENTO_AUTHZ_DB_VERSION=13
BENTO_AUTHZ_DB_CONTAINER_NAME=${BENTOV2_PREFIX}-authz-db
BENTO_AUTHZ_DB="authz"
BENTO_AUTHZ_DB_USER="authz_user"
# BENTO_AUTHZ_DB_PASSWORD is set in local.env
BENTO_AUTHZ_DB_NETWORK=${BENTOV2_PREFIX}-authz-db-net
BENTO_AUTHZ_DB_VOL_DIR=${BENTO_FAST_DATA_DIR}/authz/db
BENTO_AUTHZ_DB_MEM_LIM=1G
# Web
BENTO_WEB_CUSTOM_HEADER=
BENTOV2_WEB_IMAGE=ghcr.io/bento-platform/bento_web
BENTOV2_WEB_VERSION=6.1.1
BENTOV2_WEB_VERSION_DEV=${BENTOV2_WEB_VERSION}-dev
BENTOV2_WEB_CONTAINER_NAME=${BENTOV2_PREFIX}-web
BENTO_WEB_NETWORK=${BENTOV2_PREFIX}-web-net
BENTOV2_WEB_INTERNAL_PORT=80
BENTOV2_WEB_EXTERNAL_PORT=80
BENTOV2_WEB_MEM_LIM=3G
BENTOV2_WEB_CPUS=2
# Drop-Box
BENTOV2_DROP_BOX_IMAGE=ghcr.io/bento-platform/bento_drop_box_service
BENTOV2_DROP_BOX_VERSION=1.1.11
BENTOV2_DROP_BOX_VERSION_DEV=${BENTOV2_DROP_BOX_VERSION}-dev
BENTOV2_DROP_BOX_CONTAINER_NAME=${BENTOV2_PREFIX}-drop-box
BENTO_DROP_BOX_NETWORK=${BENTOV2_PREFIX}-drop-box-net
BENTOV2_DROP_BOX_INTERNAL_PORT=${BENTO_STD_SERVICE_INTERNAL_PORT}
BENTOV2_DROP_BOX_EXTERNAL_PORT=6000
BENTOV2_DROP_BOX_VOL_DIR=${BENTO_SLOW_DATA_DIR}/drop-box/data-x
BENTO_DROP_BOX_FS_BASE_PATH='/data' # Internal base path for drop box mount + absolute paths
BENTOV2_DROP_BOX_MEM_LIM=2G
BENTOV2_DROP_BOX_CPUS=3
# Service Registry
BENTOV2_SERVICE_REGISTRY_IMAGE=ghcr.io/bento-platform/bento_service_registry
BENTOV2_SERVICE_REGISTRY_VERSION=1.4.3
BENTOV2_SERVICE_REGISTRY_VERSION_DEV=${BENTOV2_SERVICE_REGISTRY_VERSION}-dev
BENTOV2_SERVICE_REGISTRY_CONTAINER_NAME=${BENTOV2_PREFIX}-service-registry
BENTO_SERVICE_REGISTRY_NETWORK=${BENTOV2_PREFIX}-service-registry-net
BENTOV2_SERVICE_REGISTRY_INTERNAL_PORT=${BENTO_STD_SERVICE_INTERNAL_PORT}
BENTOV2_SERVICE_REGISTRY_EXTERNAL_PORT=5010
BENTOV2_SERVICE_REGISTRY_MEM_LIM=1G
BENTOV2_SERVICE_REGISTRY_CPUS=1
BENTO_SERVICE_REGISTRY_URL=${BENTOV2_PUBLIC_URL}/api/service-registry
# Notification
BENTOV2_NOTIFICATION_IMAGE=ghcr.io/bento-platform/bento_notification_service
BENTOV2_NOTIFICATION_VERSION=3.1.7
BENTOV2_NOTIFICATION_VERSION_DEV=${BENTOV2_NOTIFICATION_VERSION}-dev
BENTOV2_NOTIFICATION_CONTAINER_NAME=${BENTOV2_PREFIX}-notification
BENTO_NOTIFICATION_NETWORK=${BENTOV2_PREFIX}-notification-net
BENTOV2_NOTIFICATION_INTERNAL_PORT=${BENTO_STD_SERVICE_INTERNAL_PORT}
BENTOV2_NOTIFICATION_EXTERNAL_PORT=8500
BENTOV2_NOTIFICATION_VOL_DIR=${BENTO_FAST_DATA_DIR}/notification/data
BENTO_NOTIFICATION_DEBUGGER_EXTERNAL_PORT=5681
BENTO_NOTIFICATION_DEBUGGER_INTERNAL_PORT=5681
BENTOV2_NOTIFICATION_MEM_LIM=2G
BENTOV2_NOTIFICATION_CPUS=2
# Aggregation
BENTOV2_AGGREGATION_IMAGE=ghcr.io/bento-platform/bento_aggregation_service
BENTOV2_AGGREGATION_VERSION=0.19.9
BENTOV2_AGGREGATION_VERSION_DEV=${BENTOV2_AGGREGATION_VERSION}-dev
BENTOV2_AGGREGATION_CONTAINER_NAME=${BENTOV2_PREFIX}-aggregation
BENTO_AGGREGATION_NETWORK=${BENTOV2_PREFIX}-aggregation-net
BENTOV2_AGGREGATION_INTERNAL_PORT=${BENTO_STD_SERVICE_INTERNAL_PORT}
BENTOV2_AGGREGATION_EXTERNAL_PORT=9500
# keep in sync with value in {aggregation_workspace}/.vscode/launch.json
BENTOV2_AGGREGATION_DEBUGGER_EXTERNAL_PORT=5684
BENTOV2_AGGREGATION_DEBUGGER_INTERNAL_PORT=5684
BENTOV2_AGGREGATION_MEM_LIM=2G
BENTOV2_AGGREGATION_CPUS=2
# Event-Relay
BENTOV2_EVENT_RELAY_IMAGE=ghcr.io/bento-platform/bento_event_relay
BENTOV2_EVENT_RELAY_VERSION=3.1.6
BENTOV2_EVENT_RELAY_VERSION_DEV=${BENTOV2_EVENT_RELAY_VERSION}-dev
BENTOV2_EVENT_RELAY_CONTAINER_NAME=${BENTOV2_PREFIX}-event-relay
BENTO_EVENT_RELAY_NETWORK=${BENTOV2_PREFIX}-event-relay-net
BENTOV2_EVENT_RELAY_INTERNAL_PORT=${BENTO_STD_SERVICE_INTERNAL_PORT}
BENTOV2_EVENT_RELAY_EXTERNAL_PORT=8750
BENTOV2_EVENT_RELAY_SOCKET_IO_PATH=/private/socket.io/
BENTOV2_EVENT_RELAY_MEM_LIM=1G
BENTOV2_EVENT_RELAY_CPUS=1
# Reference
# - Service
BENTO_REFERENCE_IMAGE=ghcr.io/bento-platform/bento_reference_service
BENTO_REFERENCE_VERSION=0.3.2
BENTO_REFERENCE_VERSION_DEV=${BENTO_REFERENCE_VERSION}-dev
BENTO_REFERENCE_CONTAINER_NAME=${BENTOV2_PREFIX}-reference
BENTO_REFERENCE_NETWORK=${BENTOV2_PREFIX}-reference-net
BENTO_REFERENCE_INTERNAL_PORT=${BENTO_STD_SERVICE_INTERNAL_PORT}
BENTO_REFERENCE_EXTERNAL_PORT=9510
BENTO_REFERENCE_DEBUGGER_INTERNAL_PORT=9511
BENTO_REFERENCE_DEBUGGER_EXTERNAL_PORT=9511
BENTO_REFERENCE_TMP_VOL_DIR=${BENTO_FAST_DATA_DIR}/reference/tmp
# - Database
BENTO_REFERENCE_DB_IMAGE=postgres
BENTO_REFERENCE_DB_VERSION=16
BENTO_REFERENCE_DB_CONTAINER_NAME=${BENTOV2_PREFIX}-reference-db
BENTO_REFERENCE_DB_NETWORK=${BENTOV2_PREFIX}-reference-db-net
BENTO_REFERENCE_DB_VOL_DIR=${BENTO_FAST_DATA_DIR}/reference/data
BENTO_REFERENCE_DB_EXTERNAL_PORT=9512
BENTO_REFERENCE_DB_NAME="reference"
BENTO_REFERENCE_DB_USER="reference_user"
# BENTO_REFERENCE_DB_PASSWORD is set in local.env
# WES
BENTOV2_WES_IMAGE=ghcr.io/bento-platform/bento_wes
BENTOV2_WES_VERSION=0.14.6
BENTOV2_WES_VERSION_DEV=${BENTOV2_WES_VERSION}-dev
BENTOV2_WES_CONTAINER_NAME=${BENTOV2_PREFIX}-wes
BENTO_WES_NETWORK=${BENTOV2_PREFIX}-wes-net
BENTOV2_WES_INTERNAL_PORT=${BENTO_STD_SERVICE_INTERNAL_PORT}
BENTOV2_WES_EXTERNAL_PORT=9250
BENTOV2_WES_VOL_DIR=${BENTO_FAST_DATA_DIR}/wes/data
BENTOV2_WES_VOL_TMP_DIR=${BENTO_FAST_DATA_DIR}/wes/tmp
BENTOV2_WES_PROD_DROP_BOX_VOL_DIR=${BENTOV2_DROP_BOX_VOL_DIR}
# ( assumes a relative drop-box path like ./lib/drop-box/... - adjust accordingly )
BENTOV2_WES_DEV_VOL_DIR=${BENTO_FAST_DATA_DIR}/wes/dev/data
BENTOV2_WES_DEV_VOL_TMP_DIR=${BENTO_FAST_DATA_DIR}/wes/dev/tmp
BENTOV2_WES_DEV_DROP_BOX_VOL_DIR=${BENTOV2_DROP_BOX_VOL_DIR}
BENTOV2_WES_DEBUGGER_INTERNAL_PORT=5680
BENTOV2_WES_DEBUGGER_EXTERNAL_PORT=5680
BENTOV2_WES_CPUS=4
BENTOV2_WES_MEM_LIMIT=8G
# 48 hours: 60 * 60 * 24 * 2:
BENTOV2_WES_WORKFLOW_TIMEOUT=172800
# DRS
BENTOV2_DRS_IMAGE=ghcr.io/bento-platform/bento_drs
BENTOV2_DRS_VERSION=0.19.0
BENTOV2_DRS_VERSION_DEV=${BENTOV2_DRS_VERSION}-dev
BENTOV2_DRS_CONTAINER_NAME=${BENTOV2_PREFIX}-drs
BENTO_DRS_NETWORK=${BENTOV2_PREFIX}-drs-net
BENTOV2_DRS_INTERNAL_PORT=${BENTO_STD_SERVICE_INTERNAL_PORT}
BENTOV2_DRS_EXTERNAL_PORT=7007
# Special container-only variable to specify where the volume is mounted inside the container
BENTO_DRS_CONTAINER_DATA_VOLUME_DIR=/drs/bento_drs/data
BENTO_DRS_CONTAINER_TMP_VOLUME_DIR=/drs/tmp
BENTO_DRS_DATA_VOL_DIR=${BENTO_SLOW_DATA_DIR}/drs/data
BENTO_DRS_WES_VOL_DIR=${BENTOV2_WES_VOL_TMP_DIR}
BENTO_DRS_TMP_VOL_DIR=${BENTO_FAST_DATA_DIR}/drs/tmp
BENTOV2_DRS_DEBUGGER_INTERNAL_PORT=5682
BENTOV2_DRS_DEBUGGER_EXTERNAL_PORT=5682
BENTOV2_DRS_MEM_LIM=2G
BENTOV2_DRS_CPUS=2
# Canonical/world-resolvable URL for DRS
# TODO: services should use the service registry instead
BENTO_DRS_URL=${BENTOV2_PUBLIC_URL}/api/drs
# Katsu-DB
BENTOV2_KATSU_DB_IMAGE=postgres
BENTOV2_KATSU_DB_VERSION=13
BENTOV2_KATSU_DB_CONTAINER_NAME=${BENTOV2_PREFIX}-katsu-db
BENTO_KATSU_DB_NETWORK=${BENTOV2_PREFIX}-katsu-db-net
BENTOV2_KATSU_DB_INTERNAL_PORT=5432
BENTOV2_KATSU_DB_EXTERNAL_PORT=5432
BENTOV2_KATSU_DB_USER=admin
# BENTOV2_KATSU_DB_PASSWORD is set in local.env
BENTOV2_KATSU_DB=metadata
BENTOV2_KATSU_DB_PROD_VOL_DIR=${BENTO_FAST_DATA_DIR}/katsu/data
BENTOV2_KATSU_DB_DEV_VOL_DIR=${BENTO_FAST_DATA_DIR}/katsu/dev/data
BENTOV2_KATSU_DB_MEM_LIM=4G
BENTOV2_KATSU_DB_CPUS=4
# Katsu
BENTOV2_KATSU_IMAGE=ghcr.io/bento-platform/katsu
BENTOV2_KATSU_VERSION=9.1.0
BENTOV2_KATSU_VERSION_DEV=${BENTOV2_KATSU_VERSION}-dev
BENTOV2_KATSU_CONTAINER_NAME=${BENTOV2_PREFIX}-katsu
BENTO_KATSU_NETWORK=${BENTOV2_PREFIX}-katsu-net
BENTOV2_KATSU_INTERNAL_PORT=${BENTO_STD_SERVICE_INTERNAL_PORT}
BENTOV2_KATSU_EXTERNAL_PORT=8000
# keep in sync with value in {katsu_workspace}/.vscode/launch.json
BENTOV2_KATSU_DEBUGGER_INTERNAL_PORT=5678
BENTOV2_KATSU_DEBUGGER_EXTERNAL_PORT=5678
BENTOV2_KATSU_INTERNAL_PROJECT_DIRECTORY=/app
BENTOV2_KATSU_DEV_WES_VOL_TMP_DIR=${BENTOV2_WES_DEV_VOL_TMP_DIR}
BENTOV2_KATSU_PROD_WES_VOL_TMP_DIR=${BENTOV2_WES_VOL_TMP_DIR}
BENTOV2_KATSU_MEM_LIM=4G
BENTOV2_KATSU_CPUS=4
# sub path where Katsu can be reached from Bento portal. Used by Django for building
# urls in templates.
CHORD_METADATA_SUB_PATH=/api/metadata
# Canonical/world-resolvable URL for Katsu
# TODO: services should use the service registry instead
BENTO_KATSU_URL=${BENTOV2_PORTAL_PUBLIC_URL}${CHORD_METADATA_SUB_PATH}
# Redis
BENTOV2_REDIS_BASE_IMAGE=redis
BENTOV2_REDIS_BASE_IMAGE_VERSION=7.0.15-alpine
BENTOV2_REDIS_CONTAINER_NAME=${BENTOV2_PREFIX}-redis
BENTO_REDIS_NETWORK=${BENTOV2_PREFIX}-redis-net
BENTOV2_REDIS_INTERNAL_PORT=6379
BENTOV2_REDIS_EXTERNAL_PORT=6379
BENTOV2_REDIS_VOL_DIR=${BENTO_FAST_DATA_DIR}/redis/data
BENTOV2_REDIS_MEM_LIM=2G
BENTOV2_REDIS_CPUS=2
# Gohan
BENTOV2_GOHAN_DEBUG=false
# -- Host
BENTOV2_GOHAN_DATA_ROOT=${BENTO_FAST_DATA_DIR}/gohan
# -- API
BENTOV2_GOHAN_API_IMAGE=ghcr.io/bento-platform/gohan-api
BENTOV2_GOHAN_API_VERSION=6.0.0
BENTOV2_GOHAN_API_VERSION_DEV=${BENTOV2_GOHAN_API_VERSION}-dev
BENTOV2_GOHAN_API_CONTAINER_NAME=${BENTOV2_PREFIX}-gohan-api
BENTO_GOHAN_API_NETWORK=${BENTOV2_PREFIX}-gohan-api-net
BENTOV2_GOHAN_API_INTERNAL_PORT=${BENTO_STD_SERVICE_INTERNAL_PORT}
BENTOV2_GOHAN_API_MEM_LIM=4G
BENTOV2_GOHAN_API_CPUS=2
BENTOV2_GOHAN_API_VCF_PATH=${BENTOV2_DROP_BOX_VOL_DIR}
BENTOV2_GOHAN_API_CONTAINERIZED_VCF_PATH=/app/vcfs
BENTOV2_GOHAN_API_GTF_PATH=${BENTOV2_GOHAN_DATA_ROOT}/gtfs
BENTOV2_GOHAN_API_CONTAINERIZED_GTF_PATH=/app/gtfs
BENTOV2_GOHAN_API_BULK_INDEXING_CAP=2000
BENTOV2_GOHAN_API_FILE_PROC_CONC_LVL=3
BENTOV2_GOHAN_API_LINE_PROC_CONC_LVL=700
BENTOV2_GOHAN_API_AUTHZ_ENABLED=false
#BENTOV2_GOHAN_API_AUTHZ_AGREED_DISABLED_RISK=false
BENTOV2_GOHAN_API_AUTHZ_REQHEADS=X-CUSTOM-1,X-CUSTOM-2
# Canonical/world-resolvable URL for Gohan
# - TODO: services should use the service registry instead
BENTO_GOHAN_URL=${BENTOV2_PORTAL_PUBLIC_URL}/api/gohan
# -- Elasticsearch
BENTOV2_GOHAN_ES_USERNAME=elastic
# BENTOV2_GOHAN_ES_PASSWORD comes from default_config
BENTOV2_GOHAN_ES_IMAGE=ghcr.io/bento-platform/gohan-elasticsearch
BENTOV2_GOHAN_ES_VERSION=6.0.0
BENTOV2_GOHAN_ES_CONTAINER_NAME=${BENTOV2_PREFIX}-gohan-elasticsearch
BENTO_GOHAN_ES_NETWORK=${BENTOV2_PREFIX}-gohan-elasticsearch-net
BENTOV2_GOHAN_ES_INTERNAL_PORT_1=9200
BENTOV2_GOHAN_ES_INTERNAL_PORT_2=9300
BENTOV2_GOHAN_ES_DISC_TYP=single-node
BENTOV2_GOHAN_ES_MEM_LIM=4G
BENTOV2_GOHAN_ES_CPUS=4
# allocate a little bit less memory than what is stated in `mem_limit` ^^
BENTOV2_GOHAN_ES_DATA_DIR=${BENTOV2_GOHAN_DATA_ROOT}/elasticsearch
BENTO_GOHAN_ES_JVM_OPTIONS_DIR=${PWD}/lib/gohan/es_jvm_options
# -- API-DRS Bridge
BENTOV2_GOHAN_API_DRS_BRIDGE_HOST_DIR=${BENTOV2_GOHAN_DATA_ROOT}/api_drs_bridge
BENTOV2_GOHAN_API_API_DRS_BRIDGE_DIR_CONTAINERIZED=/data
BENTOV2_GOHAN_DRS_API_DRS_BRIDGE_DIR_CONTAINERIZED=/data
# -- URLs
BENTOV2_GOHAN_PRIVATE_ES_URL=http://${BENTOV2_GOHAN_ES_CONTAINER_NAME}:${BENTOV2_GOHAN_ES_INTERNAL_PORT_1}
BENTOV2_GOHAN_PRIVATE_DRS_URL=http://${BENTOV2_DRS_CONTAINER_NAME}:${BENTOV2_DRS_INTERNAL_PORT}
BENTOV2_GOHAN_PRIVATE_AUTHZ_URL=http://${BENTOV2_GOHAN_AUTHZ_OPA_CONTAINER_NAME}:${BENTOV2_GOHAN_AUTHZ_OPA_INTERNAL_PORT}/v1/data/permissions/allowed
# --
# Bento-Public
BENTO_PUBLIC_IMAGE=ghcr.io/bento-platform/bento_public
BENTO_PUBLIC_VERSION=0.22.0
BENTO_PUBLIC_VERSION_DEV=${BENTO_PUBLIC_VERSION}-dev
BENTO_PUBLIC_CONTAINER_NAME=${BENTOV2_PREFIX}-public
BENTO_PUBLIC_NETWORK=${BENTOV2_PREFIX}-public-net
BENTO_PUBLIC_INTERNAL_PORT=${BENTO_STD_SERVICE_INTERNAL_PORT}
BENTO_PUBLIC_EXTERNAL_PORT=8090
BENTO_PUBLIC_DEBUG=false
BENTO_PUBLIC_SERVICE_ID=${BENTOV2_PREFIX}-public
BENTO_PUBLIC_CLIENT_NAME=BentoPublicDev
BENTO_PUBLIC_WES_URL=http://${BENTOV2_WES_CONTAINER_NAME}:${BENTOV2_WES_INTERNAL_PORT}
BENTO_PUBLIC_GOHAN_URL=http://${BENTOV2_GOHAN_API_CONTAINER_NAME}:${BENTOV2_GOHAN_API_INTERNAL_PORT}
BENTO_PUBLIC_PORTAL_URL=${BENTOV2_PORTAL_PUBLIC_URL}
# BENTO_PUBLIC_TRANSLATED is set in default_config.env and can be overwritten in local.env
# Beacon
BENTO_BEACON_CONTAINER_NAME=${BENTOV2_PREFIX}-beacon
BENTO_BEACON_NETWORK=${BENTOV2_PREFIX}-beacon-net
BENTO_BEACON_IMAGE=ghcr.io/bento-platform/bento_beacon
BENTO_BEACON_VERSION=0.18.1
BENTO_BEACON_VERSION_DEV=${BENTO_BEACON_VERSION}-dev
BENTO_BEACON_INTERNAL_PORT=${BENTO_STD_SERVICE_INTERNAL_PORT}
BENTO_BEACON_EXTERNAL_PORT=5000
BENTO_BEACON_DEBUGGER_INTERNAL_PORT=5683
BENTO_BEACON_DEBUGGER_EXTERNAL_PORT=5683
BENTO_BEACON_MEM_LIM=2G
BENTO_BEACON_CPUS=2
BENTO_BEACON_CONFIG_DIR=${PWD}/lib/beacon/config
BENTO_BEACON_KATSU_TIMEOUT=60
BENTO_BEACON_GOHAN_TIMEOUT=60
# cBioPortal
BENTO_CBIOPORTAL_CONTAINER_NAME=${BENTOV2_PREFIX}-cbioportal
BENTO_CBIOPORTAL_NETWORK=${BENTOV2_PREFIX}-cbioportal-net
BENTO_CBIOPORTAL_IMAGE=cbioportal/cbioportal
BENTO_CBIOPORTAL_IMAGE_VERSION=5.4.10
BENTO_CBIOPORTAL_INTERNAL_PORT=8080
BENTO_CBIOPORTAL_EXTERNAL_PORT=8089
BENTO_CBIOPORTAL_STUDY_DIR=${BENTO_FAST_DATA_DIR}/cbioportal/study
BENTO_CBIOPORTAL_DATABASE_IMAGE=mysql
BENTO_CBIOPORTAL_DATABASE_IMAGE_VERSION=5.7
BENTO_CBIOPORTAL_DATABASE_CONTAINER_NAME=${BENTOV2_PREFIX}-cbioportal-db
BENTO_CBIOPORTAL_DATABASE_NETWORK=${BENTOV2_PREFIX}-cbioportal-db-net
BENTO_CBIOPORTAL_DATABASE_DBNAME=cbioportal
BENTO_CBIOPORTAL_DATABASE_DBUSER=cbio_user
# BENTO_CBIOPORTAL_DATABASE_PASSWORD=somepassword Should be set to secret values in local.env
# BENTO_CBIOPORTAL_DATABASE_ROOT_PASSWORD=somepassword Should be set to secret values in local.env
BENTO_CBIOPORTAL_DATABASE_DATA_DIR=${BENTO_FAST_DATA_DIR}/cbioportal/database
BENTO_CBIOPORTAL_SESSION_IMAGE=cbioportal/session-service
BENTO_CBIOPORTAL_SESSION_IMAGE_VERSION=0.6.2
BENTO_CBIOPORTAL_SESSION_CONTAINER_NAME=${BENTOV2_PREFIX}-cbioportal-session
BENTO_CBIOPORTAL_SESSION_NETWORK=${BENTOV2_PREFIX}-cbioportal-session-net
BENTO_CBIOPORTAL_SESSION_SERVER_PORT=5000
# Need mongo 6.0+ to support arm64 + x86_64 (both needed for development)
# Technically not in line with the cBioPortal requirements... we'll see if it causes issues
BENTO_CBIOPORTAL_SESSION_DATABASE_IMAGE=mongo
BENTO_CBIOPORTAL_SESSION_DATABASE_IMAGE_VERSION=6.0.15
BENTO_CBIOPORTAL_SESSION_DATABASE_CONTAINER_NAME=${BENTOV2_PREFIX}-cbioportal-session-db
BENTO_CBIOPORTAL_SESSION_DATABASE_DATA_DIR=${BENTO_FAST_DATA_DIR}/cbioportal/session_db
# Uses BENTO_CBIOPORTAL_SESSION_NETWORK as the network
# Monitoring
BENTO_MONITORING_NETWORK=${BENTOV2_PREFIX}-monitoring-net
BENTO_PRIVATE_GRAFANA_URL=${BENTOV2_PORTAL_PUBLIC_URL}/api/grafana
BENTO_PUBLIC_GRAFANA_URL=${BENTOV2_PORTAL_PUBLIC_URL}/grafana
BENTO_LOKI_IMAGE=grafana/loki
BENTO_LOKI_IMAGE_VERSION=3.1.2
BENTO_LOKI_CONTAINER_NAME=${BENTOV2_PREFIX}-loki
BENTO_LOKI_TEMP_DIR=${BENTO_SLOW_DATA_DIR}/loki/tmp
BENTO_GRAFANA_IMAGE=grafana/grafana
BENTO_GRAFANA_IMAGE_VERSION=11.1.8
BENTO_GRAFANA_CONTAINER_NAME=${BENTOV2_PREFIX}-grafana
BENTO_GRAFANA_LIB_DIR=${BENTO_SLOW_DATA_DIR}/grafana/lib
# JMESPath to recover the user's role from the ID token
BENTO_GRAFANA_ROLE_ATTRIBUTE_PATH="contains(resource_access.grafana.roles[*], 'admin') && 'Admin' || contains(resource_access.grafana.roles[*], 'editor') && 'Editor' || contains(resource_access.grafana.roles[*], 'viewer') && 'Viewer' || 'None'"
BENTO_GRAFANA_SIGNOUT_REDIRECT_URL=https://${BENTOV2_AUTH_DOMAIN}/realms/${BENTOV2_AUTH_REALM}/protocol/openid-connect/logout?post_logout_redirect_uri=https%3A%2F%2F${BENTOV2_PORTAL_DOMAIN}%2Fapi%2Fgrafana%2Flogin
BENTO_PROMTAIL_IMAGE=grafana/promtail
BENTO_PROMTAIL_IMAGE_VERSION=3.1.2
BENTO_PROMTAIL_CONTAINER_NAME=${BENTOV2_PREFIX}-promtail