-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathcompose.yml
More file actions
110 lines (102 loc) · 3.08 KB
/
compose.yml
File metadata and controls
110 lines (102 loc) · 3.08 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
services:
backend:
image: ${TBANK_DOCKER_REGISTRY}/bank:${TBANK_VERSION}
restart: unless-stopped
mem_limit: 6g
mem_reservation: 2g
shm_size: 1g
cpus: 4
# Uncomment the below line and set user and group id (from host system) to use it in container
# user: "$UID:$GID"
volumes:
# persist bank logs
- bank-logs:/opt/tolerant/logs
# Example for custom configuration via volume:
- bank-config:/opt/tolerant/config
# Example for custom data via volume
- bank-data:/opt/tolerant/data
# Example for custom protocols via volume
- bank-protocols:/opt/tolerant/protocols
environment:
# number of processors to be used by the JVM
- JVM_OPT_ACTIVE_PROCESSOR_COUNT=4
- TZ=${TZ}
# If no prometheus export is wanted, set to false
- TL_PROMETHEUS_METRICS_ENABLED=true
gui:
image: ${TBANK_DOCKER_REGISTRY}/bank-gui:${TBANK_VERSION}
restart: unless-stopped
mem_limit: 6g
mem_reservation: 1g
shm_size: 512M
cpus: 2
# Uncomment the below line and set user and group id (from host system) to use it in container
# user: "$UID:$GID"
volumes_from:
- backend:rw
environment:
- TZ=${TZ}
# url to service backend
- BACKEND_SERVICE_URL=http://backend:8080
# number of processors to be used by the JVM
- JVM_OPT_ACTIVE_PROCESSOR_COUNT=2
# If no prometheus export is wanted, set to false
- TL_PROMETHEUS_METRICS_ENABLED=false
# Uncomment the below line when installing soap
# - IS_SOAP_INSTALLED=true
prometheus:
image: prom/prometheus:${PROMETHEUS_VERSION}
volumes:
- type: bind
source: ./config/prometheus/prometheus.yml
target: /etc/prometheus/prometheus.yml
read_only: true
- prometheus-data:/prometheus
expose:
- 9090
depends_on:
- backend
grafana:
image: grafana/grafana:${GRAFANA_VERSION}
volumes:
- ./config/grafana/datasources:/etc/grafana/provisioning/datasources
- ./config/grafana/dashboards:/etc/grafana/provisioning/dashboards
- grafana-data:/var/lib/grafana
environment:
- GF_SECURITY_ADMIN_USER=tolerant
- GF_SECURITY_ADMIN_PASSWORD=tolerant
ports:
- ${GRAFANA_PORT}:3000
depends_on:
- prometheus
proxy:
image: nginx:${NGINX_VERSION}-alpine
restart: unless-stopped
volumes:
- type: bind
source: ./config/nginx/default.conf.template
target: /etc/nginx/templates/default.conf.template
read_only: true
# persist nginx logs
- nginx-logs:/etc/nginx/logs
environment:
- PROXY_HOST_PORT=${NGINX_PORT}
ports:
- ${NGINX_PORT}:8080
depends_on:
backend:
condition: service_started
gui:
condition: service_healthy
volumes:
# Volume for persistent data of keycloak
nginx-logs:
bank-logs:
grafana-data:
prometheus-data:
bank-protocols:
# Examples for external created volumes with custom configuration and data
bank-config:
# external: true
bank-data:
# external: true