@@ -6,20 +6,14 @@ services:
6
6
backend-services :
7
7
image : busybox
8
8
depends_on :
9
- - chronograf
10
- - influxdb
11
- - mysql
12
9
- rabbitmq
13
- - redis
14
10
- zookeeper
15
11
- minio
16
12
- grafana
17
13
18
14
backend-services-nodb :
19
15
image : busybox
20
16
depends_on :
21
- - chronograf
22
- - influxdb
23
17
- rabbitmq
24
18
- zookeeper
25
19
@@ -61,12 +55,7 @@ services:
61
55
- BROWSERUP_RABBITMQ_DEFAULT_PASS=${BROWSERUP_RABBITMQ_DEFAULT_PASS}
62
56
- BROWSERUP_RABBITMQ_QUEUE_PORT=5672
63
57
- BROWSERUP_ZOOKEEPER_HOST=${BROWSERUP_ZOOKEEPER_HOST}
64
- - BROWSERUP_ZOOKEEPER_CLIENT_PORT=2181
65
- - BROWSERUP_INFLUX_DB_HOST=${BROWSERUP_INFLUX_DB_HOST}
66
- - BROWSERUP_INFLUX_DB_PORT=8086
67
- - BROWSERUP_INFLUX_DB_NAME=browserup
68
- - BROWSERUP_INFLUX_DB_USER=browserup
69
- - BROWSERUP_INFLUX_DB_PASSWORD=${BROWSERUP_INFLUX_DB_PASSWORD}
58
+ - BROWSERUP_ZOOKEEPER_CLIENT_PORT=9181
70
59
- BROWSERUP_MINION_VUS=1
71
60
- BROWSERUP_MAX_MINIONS_PER_EC2_INSTANCE=${BROWSERUP_MAX_MINIONS_PER_EC2_INSTANCE}
72
61
- BROWSERUP_IS_CLOUD=false
@@ -88,8 +77,8 @@ services:
88
77
- BROWSERUP_S3_MINIO_HOST_PORT_1=${BROWSERUP_S3_MINIO_PORT_1}
89
78
- BROWSERUP_S3_MINIO_ARTIFACTS_BUCKET=${BROWSERUP_S3_MINIO_ARTIFACTS_BUCKET}
90
79
- BROWSERUP_CLUSTER_NAME=${BROWSERUP_CLUSTER_NAME}
80
+ - BROWSERUP_NATS_URLS=${BROWSERUP_NATS_URLS}
91
81
depends_on :
92
- - influxdb
93
82
- zookeeper
94
83
- rabbitmq
95
84
- fluentbit
@@ -119,12 +108,7 @@ services:
119
108
- BROWSERUP_RABBITMQ_DEFAULT_PASS=${BROWSERUP_RABBITMQ_DEFAULT_PASS}
120
109
- BROWSERUP_RABBITMQ_QUEUE_PORT=5672
121
110
- BROWSERUP_ZOOKEEPER_HOST=${BROWSERUP_ZOOKEEPER_HOST}
122
- - BROWSERUP_ZOOKEEPER_CLIENT_PORT=2181
123
- - BROWSERUP_INFLUX_DB_HOST=${BROWSERUP_INFLUX_DB_HOST}
124
- - BROWSERUP_INFLUX_DB_PORT=8086
125
- - BROWSERUP_INFLUX_DB_NAME=browserup
126
- - BROWSERUP_INFLUX_DB_USER=browserup
127
- - BROWSERUP_INFLUX_DB_PASSWORD=${BROWSERUP_INFLUX_DB_PASSWORD}
111
+ - BROWSERUP_ZOOKEEPER_CLIENT_PORT=9181
128
112
- BROWSERUP_MINION_VUS=1
129
113
- BROWSERUP_MINION_IMAGE_VERSION_TAG=${MINION_IMAGE_VERSION_TAG}
130
114
- BROWSERUP_S3_MINIO_ACCESS_KEY_ID=${BROWSERUP_S3_MINIO_ACCESS_KEY_ID}
@@ -138,11 +122,13 @@ services:
138
122
- BROWSERUP_CLUSTER_NAME=${BROWSERUP_CLUSTER_NAME}
139
123
- BROWSERUP_USER_ARTIFACT_CACHE_PATH=/bu/artifactcache
140
124
- BROWSERUP_USE_LOCAL_DOCKER_CACHED_IMAGE=${BROWSERUP_USE_LOCAL_DOCKER_CACHED_IMAGE}
125
+ - BROWSERUP_NATS_URLS=${BROWSERUP_NATS_URLS}
141
126
depends_on :
142
127
- zookeeper
143
128
- rabbitmq
144
129
- grid-java-api
145
130
- fluentbit
131
+ - clickhouse
146
132
logging :
147
133
driver : " fluentd"
148
134
options :
@@ -160,8 +146,9 @@ services:
160
146
- BROWSERUP_RABBITMQ_DEFAULT_PASS=${BROWSERUP_RABBITMQ_DEFAULT_PASS}
161
147
- BROWSERUP_RABBITMQ_QUEUE_PORT=5672
162
148
- BROWSERUP_ZOOKEEPER_HOST=${BROWSERUP_ZOOKEEPER_HOST}
163
- - BROWSERUP_ZOOKEEPER_CLIENT_PORT=2181
149
+ - BROWSERUP_ZOOKEEPER_CLIENT_PORT=9181
164
150
- BROWSERUP_IS_CLOUD=false
151
+ - BROWSERUP_NATS_URLS=${BROWSERUP_NATS_URLS}
165
152
depends_on :
166
153
- zookeeper
167
154
- rabbitmq
@@ -174,30 +161,21 @@ services:
174
161
175
162
webconsole :
176
163
container_name : browserup_webconsole
177
- image : docker.io/browserup/webconsole:latest
164
+ image : docker.io/browserup/webconsole:snapshot
178
165
privileged : true
179
166
security_opt :
180
167
- " seccomp=unconfined"
181
168
- " apparmor=unconfined"
182
169
devices :
183
170
- " /dev/fuse"
184
171
ports :
185
- - " ${BROWSERUP_WEBCONSOLE_PORT}:3000 "
172
+ - " ${BROWSERUP_WEBCONSOLE_PORT}:3100 "
186
173
environment :
187
174
- DOCKER_LOGS=true
188
- - BROWSERUP_MYSQL_HOST=${BROWSERUP_MYSQL_HOST}
189
- - BROWSERUP_MYSQL_USERNAME=browserup
190
- - BROWSERUP_MYSQL_PASSWORD=${BROWSERUP_MYSQL_PASSWORD}
191
- - BROWSERUP_MYSQL_PORT=3306
192
- - BROWSERUP_INFLUX_DB_HOST=${BROWSERUP_INFLUX_DB_HOST}
193
- - BROWSERUP_INFLUX_DB_PORT=8086
194
- - BROWSERUP_INFLUX_DB_NAME=browserup
195
- - BROWSERUP_INFLUX_DB_USER=browserup
196
- - BROWSERUP_INFLUX_DB_PASSWORD=${BROWSERUP_INFLUX_DB_PASSWORD}
175
+ - BROWSERUP_CLICKHOUSE_HOST=${BROWSERUP_CLICKHOUSE_HOST}
197
176
- BROWSERUP_GRID_SERVICE_URL=http://${BROWSERUP_GRID_JAVA_API_HOST}:8080/grid
198
177
- BROWSERUP_LOKI_SERVICE_URL=http://${BROWSERUP_LOKI_HOST}:3100
199
178
- BROWSERUP_IS_CLOUD=false
200
- - BROWSERUP_REDIS_URL=redis://${BROWSERUP_REDIS_HOST}:6379/1
201
179
- BROWSERUP_S3_MINIO_ACCESS_KEY_ID=${BROWSERUP_S3_MINIO_ACCESS_KEY_ID}
202
180
- BROWSERUP_S3_MINIO_SECRET_ACCESS_KEY=${BROWSERUP_S3_MINIO_SECRET_ACCESS_KEY}
203
181
- BROWSERUP_S3_MINIO_ARTIFACTS_BUCKET=${BROWSERUP_S3_MINIO_ARTIFACTS_BUCKET}
@@ -211,84 +189,79 @@ services:
211
189
- RAILS_LOG_TO_STDOUT=true
212
190
- RAILS_SERVE_STATIC_FILES=true
213
191
- BROWSERUP_S3_MINIO_HOST_PORT_1=${BROWSERUP_S3_MINIO_PORT_1}
192
+ - RAILS_MASTER_KEY=6f893b421a180634146cd1eb5f58cc80
193
+ - PORT=3000
194
+ - BROWSERUP_WC_RUNNING_AS_SERVER=true
195
+ - BROWSERUP_NATS_URLS=${BROWSERUP_NATS_URLS}
196
+ - BROWSERUP_NATS_SERVER_LIST=${BROWSERUP_NATS_SERVER_LIST}
214
197
depends_on :
215
- - mysql
216
- - influxdb
217
198
- grid-java-api
218
- - redis
219
199
- minio
220
200
- fluentbit
221
201
logging :
222
202
driver : " fluentd"
223
203
options :
224
204
fluentd-address : " localhost:24224"
225
205
226
- chronograf :
227
- image : chronograf:1.7.16
228
- ports :
229
- - " ${BROWSERUP_CHRONOGRAF_PORT}:8888"
230
- depends_on :
231
- - influxdb
232
- - fluentbit
233
- logging :
234
- driver : " fluentd"
235
- options :
236
- fluentd-address : " localhost:24224"
237
-
238
- influxdb :
239
- container_name : browserup_influxdb
240
- image : influxdb:1.8.10
206
+ clickhouse :
207
+ image : ' clickhouse/clickhouse-server:25.1'
208
+ container_name : clickhouse
209
+ hostname : clickhouse
241
210
volumes :
242
- - influxdb-volume:/var/lib/influxdb
211
+ - ./resources/click-house/config.xml:/etc/clickhouse-server/config.d/config.xml
212
+ - ./resources/click-house/users.xml:/etc/clickhouse-server/users.d/users.xml
213
+ - ./resources/click-house/schemas/errors.proto:/var/lib/clickhouse/format_schemas/errors.proto
214
+ - ./resources/click-house/schemas/run_infos.proto:/var/lib/clickhouse/format_schemas/run_infos.proto
215
+ - ./resources/click-house/schemas/steps.proto:/var/lib/clickhouse/format_schemas/steps.proto
216
+ - ./resources/click-house/schemas/system_stats.proto:/var/lib/clickhouse/format_schemas/system_stats.proto
217
+ - ./resources/click-house/schemas/urls.proto:/var/lib/clickhouse/format_schemas/urls.proto
218
+ - ./resources/click-house/schemas/verifications.proto:/var/lib/clickhouse/format_schemas/verifications.proto
219
+ - ./resources/click-house/schemas/vu_logs.proto:/var/lib/clickhouse/format_schemas/vu_logs.proto
220
+ - ./resources/click-house/schemas/vu_statuses.proto:/var/lib/clickhouse/format_schemas/vu_statuses.proto
243
221
ports :
244
- - " ${BROWSERUP_INFLUX_DB_PORT}:8086"
245
- environment :
246
- - INFLUXDB_DB=browserup
247
- - INFLUX_DB_USER=browserup
248
- - INFLUX_DB_PASSWORD=${BROWSERUP_INFLUX_DB_PASSWORD}
249
- - INFLUXDB_LOGGING_LEVEL=debug
250
- - INFLUXDB_DATA_MAX_SERIES_PER_DATABASE=0
251
- - INFLUXDB_DATA_MAX_VALUES_PER_TAG=0
252
- - INFLUXDB_HTTP_LOG_ENABLED=false
222
+ - ' 8123:8123'
223
+ - ' 9000:9000'
253
224
depends_on :
225
+ - zookeeper
226
+ - nats
227
+ - nats-1
254
228
- fluentbit
255
229
logging :
256
230
driver : " fluentd"
257
231
options :
258
232
fluentd-address : " localhost:24224"
259
233
260
- mysql :
261
- container_name : browserup_mysql
262
- image : mysql:8.0.31-oracle
263
- command : mysqld --default-authentication-plugin=mysql_native_password
234
+ zookeeper :
235
+ image : ' clickhouse/clickhouse-keeper:24.4 '
236
+ container_name : zookeeper
237
+ hostname : zookeeper
264
238
volumes :
265
- - mysql-volume:/var/lib/mysql
266
- - ./resources/init.sql:/docker-entrypoint-initdb.d/z-create-test-db.sql
239
+ - ./resources/click-house/keeper-config.xml:/etc/clickhouse-keeper/keeper_config.xml
267
240
ports :
268
- - " ${BROWSERUP_MYSQL_PORT}:3306"
269
- environment :
270
- - MYSQL_RANDOM_ROOT_PASSWORD=yes
271
- - MYSQL_DATABASE=browserup_development
272
- - MYSQL_USER=browserup
273
- - MYSQL_PASSWORD=${BROWSERUP_MYSQL_PASSWORD}
241
+ - ' 9181:9181'
274
242
depends_on :
275
243
- fluentbit
276
244
logging :
277
245
driver : " fluentd"
278
246
options :
279
247
fluentd-address : " localhost:24224"
280
248
281
- redis :
282
- container_name : browserup_redis
283
- image : redis:6.2.5
249
+ nats :
250
+ image : nats
284
251
ports :
285
- - " ${BROWSERUP_REDIS_PORT}:6379"
286
- depends_on :
287
- - fluentbit
288
- logging :
289
- driver : " fluentd"
290
- options :
291
- fluentd-address : " localhost:24224"
252
+ - " 6222:6222"
253
+ - " 4222:4222"
254
+ - " 8222:8222"
255
+ volumes :
256
+ - ./resources/nats/nats-server.conf:/etc/nats/nats-server.conf
257
+ command : " --cluster_name NATS --cluster nats://0.0.0.0:6222 --http_port 8222 -c /etc/nats/nats-server.conf"
258
+
259
+ nats-1 :
260
+ image : nats
261
+ volumes :
262
+ - ./resources/nats/nats-server.conf:/etc/nats/nats-server.conf
263
+ command : " --cluster_name NATS --cluster nats://0.0.0.0:6222 --routes=nats://nats:6222 -c /etc/nats/nats-server.conf"
264
+ depends_on : ["nats"]
292
265
293
266
rabbitmq :
294
267
container_name : browserup_rabbitmq
@@ -314,28 +287,6 @@ services:
314
287
options :
315
288
fluentd-address : " localhost:24224"
316
289
317
- zookeeper :
318
- container_name : browserup_zookeeper
319
- image : zookeeper:3.8.1
320
- volumes :
321
- - ./resources/zoo.cfg:/conf/zoo.cfg
322
- - zookeeper-data-volume:/data
323
- - zookeeper-datalog-volume:/datalog
324
- ports :
325
- - " ${BROWSERUP_ZOOKEEPER_CLIENT_PORT}:2181"
326
- environment :
327
- - ZOO_TICK_TIME=300000 # Helpful for debugging
328
- - ZOO_CFG_EXTRA=warn
329
- - ZOO_MAX_CLIENT_CNXNS=${BROWSERUP_ZOO_MAX_CLIENT_CNXNS}
330
- depends_on :
331
- - fluentbit
332
- - loki
333
- - grafana
334
- logging :
335
- driver : " fluentd"
336
- options :
337
- fluentd-address : " localhost:24224"
338
-
339
290
minio :
340
291
container_name : browserup_minio
341
292
image : quay.io/minio/minio:RELEASE.2022-01-08T03-11-54Z
@@ -374,8 +325,6 @@ services:
374
325
# storage
375
326
loki :
376
327
image : grafana/loki:2.8.6
377
- ports :
378
- - " 24310:3100"
379
328
volumes :
380
329
- ./resources/loki-config.yaml:/etc/loki/local-config.yaml
381
330
@@ -396,6 +345,18 @@ services:
396
345
- ./resources/grafana-default-dashboard.json:/etc/grafana/provisioning/dashboards/grafana-default-dashboard.json
397
346
- ./resources/grafana-zookeeper-dashboard.json:/etc/grafana/provisioning/dashboards/grafana-zookeeper-dashboard.json
398
347
- ./resources/grafana-grid-services-dashboard.json:/etc/grafana/provisioning/dashboards/grafana-grid-services-dashboard.json
348
+ - ./resources/grafana-cadvisor-dashboard.json:/etc/grafana/provisioning/dashboards/grafana-cadvisor-dashboard.json
349
+ - ./resources/grafana-clickhouse-dashboard.json:/etc/grafana/provisioning/dashboards/grafana-clickhouse-dashboard.json
350
+
351
+ cadvisor :
352
+ image : gcr.io/cadvisor/cadvisor
353
+ container_name : cadvisor
354
+ volumes :
355
+ - /:/rootfs:ro
356
+ - /var/run:/var/run:ro
357
+ - /sys:/sys:ro
358
+ - /var/lib/docker/:/var/lib/docker:ro
359
+ - /dev/disk:/dev/disk/:ro
399
360
400
361
prometheus :
401
362
image : prom/prometheus:v2.44.0
@@ -405,8 +366,6 @@ services:
405
366
- " ${PROMETHEUS_PORT}:9090"
406
367
407
368
volumes :
408
- influxdb-volume :
409
- mysql-volume :
410
369
rabbitmq-volume :
411
370
zookeeper-data-volume :
412
371
zookeeper-datalog-volume :
0 commit comments