-
Notifications
You must be signed in to change notification settings - Fork 20
/
docker-compose.yml
171 lines (171 loc) · 5.49 KB
/
docker-compose.yml
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
networks:
default:
name: infra
external: true
services:
stf-proxy:
image: "nginx:${TAG_NGINX}"
container_name: stf-proxy
volumes:
- ./configuration/stf-proxy/nginx.conf:/etc/nginx/nginx.conf:ro
- ./configuration/stf-proxy/ssl:/etc/nginx/ssl:ro
- ./configuration/stf-proxy/htpasswd:/etc/nginx/htpasswd:ro
- ./configuration/stf-proxy/grid:/usr/share/nginx/html/grid:ro
ports:
- "${STF_PORT}:80" # primary HTTP port
depends_on:
- stf-app
restart: always
mcloud-grid:
image: "public.ecr.aws/zebrunner/mcloud-grid:${TAG_SELENIUM_HUB}"
container_name: mcloud-grid
env_file:
- variables.env
environment:
- STF_URL=http://stf-api:3000
# 10 min session wait timeout as 20 min is configured on NGiNX
- GRID_NEW_SESSION_WAIT_TIMEOUT=600000
- CHECK_APPIUM_STATUS=true
# - JAVA_OPTS=-Dselenium.LOGGER.level=FINEST
ports:
- "4446:4444"
restart: always
rethinkdb:
image: "rethinkdb:${TAG_RETHINKDB}"
container_name: rethinkdb
ports:
- "28015:28015"
volumes:
- "stf-db-volume:/data"
command: rethinkdb --bind all --cache-size 8192 --no-update-check
restart: always
stf-app:
image: "public.ecr.aws/zebrunner/stf:${TAG_STF}"
container_name: stf-app
env_file:
- variables.env
command: stf app --port 3000 --auth-url ${STF_URL}/${AUTH_URL} --websocket-url ${STF_URL}/
depends_on:
- "rethinkdb"
restart: always
stf-auth:
image: public.ecr.aws/zebrunner/stf:${TAG_STF}
container_name: stf-auth
env_file:
- variables.env
# ${STF_URL}/stf/ with slash at the end produce invalid redirect! /stf/?jwt=e...
command: stf ${AUTH_SYSTEM} --port 3000 --app-url ${STF_URL}/stf
depends_on:
- "rethinkdb"
restart: always
stf-migrate:
image: "public.ecr.aws/zebrunner/stf:${TAG_STF}"
container_name: stf-migrate
env_file:
- variables.env
command: stf migrate
depends_on:
- "rethinkdb"
stf-processor001:
image: "public.ecr.aws/zebrunner/stf:${TAG_STF}"
container_name: stf-processor001
env_file:
- variables.env
command: stf processor proc001 --connect-app-dealer tcp://stf-triproxy-app:7160 --connect-dev-dealer tcp://stf-triproxy-dev:7260
depends_on:
- "rethinkdb"
restart: always
stf-reaper:
image: "public.ecr.aws/zebrunner/stf:${TAG_STF}"
container_name: stf-reaper
env_file:
- variables.env
command: stf reaper reaper001 --connect-push tcp://stf-triproxy-dev:7270 --connect-sub tcp://stf-triproxy-app:7150 --heartbeat-timeout 30000
depends_on:
- "rethinkdb"
restart: always
stf-storage-plugin-apk:
image: "public.ecr.aws/zebrunner/stf:${TAG_STF}"
container_name: stf-storage-plugin-apk
env_file:
- variables.env
command: stf storage-plugin-apk --port 3000 --storage-url ${STF_URL}/
depends_on:
- "rethinkdb"
restart: always
stf-storage-plugin-image:
image: "public.ecr.aws/zebrunner/stf:${TAG_STF}"
container_name: stf-storage-plugin-image
env_file:
- variables.env
command: stf storage-plugin-image --port 3000 --storage-url ${STF_URL}/
depends_on:
- "rethinkdb"
restart: always
stf-storage-temp:
image: "public.ecr.aws/zebrunner/stf:${TAG_STF}"
container_name: stf-storage-temp
env_file:
- variables.env
volumes:
- "stf-temp-volume:/data"
command: stf storage-temp --port 3000 --save-dir /data --connect-sub tcp://stf-triproxy-app:7150 --connect-push tcp://stf-triproxy-app:7170
depends_on:
- "rethinkdb"
restart: always
stf-triproxy-app:
image: "public.ecr.aws/zebrunner/stf:${TAG_STF}"
container_name: stf-triproxy-app
env_file:
- variables.env
command: stf triproxy app001 --bind-pub "tcp://*:7150" --bind-dealer "tcp://*:7160" --bind-pull "tcp://*:7170"
ports:
- "7150:7150"
- "7160:7160"
- "7170:7170"
depends_on:
- "rethinkdb"
restart: always
stf-triproxy-dev:
image: "public.ecr.aws/zebrunner/stf:${TAG_STF}"
container_name: stf-triproxy-dev
env_file:
- variables.env
command: stf triproxy dev001 --bind-pub "tcp://*:7250" --bind-dealer "tcp://*:7260" --bind-pull "tcp://*:7270"
ports:
- "7250:7250"
- "7260:7260"
- "7270:7270"
depends_on:
- "rethinkdb"
restart: always
stf-websocket:
image: "public.ecr.aws/zebrunner/stf:${TAG_STF}"
container_name: stf-websocket
env_file:
- variables.env
command: stf websocket --port 3000 --storage-url ${STF_URL}/ --connect-sub tcp://stf-triproxy-app:7150 --connect-push tcp://stf-triproxy-app:7170
depends_on:
- "rethinkdb"
restart: always
stf-api:
image: "public.ecr.aws/zebrunner/stf:${TAG_STF}"
container_name: stf-api
env_file:
- variables.env
command: stf api --port 3000 --connect-sub tcp://stf-triproxy-app:7150 --connect-push tcp://stf-triproxy-app:7170 --connect-sub-dev tcp://stf-triproxy-dev:7250 --connect-push-dev tcp://stf-triproxy-dev:7270
depends_on:
- "rethinkdb"
restart: always
stf-api-groups-engine:
image: "public.ecr.aws/zebrunner/stf:${TAG_STF}"
container_name: stf-api-groups-engine
env_file:
- variables.env
command: stf groups-engine --connect-sub tcp://stf-triproxy-app:7150 --connect-push tcp://stf-triproxy-app:7170 --connect-sub-dev tcp://stf-triproxy-dev:7250 --connect-push-dev tcp://stf-triproxy-dev:7270
depends_on:
- "rethinkdb"
restart: always
volumes:
stf-db-volume:
stf-temp-volume: