/
docker-compose.yaml
52 lines (48 loc) · 1.49 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
# Gets a local development environment up and running.
version: '3.8'
name: 'k6-dashboard'
services:
timescaledb:
image: timescale/timescaledb:latest-pg16
ports:
- "5432:5432"
environment:
- POSTGRES_PASSWORD=KrPPCHdYSXz6wMct5tUK # TODO: Replace this when using in production
- POSTGRES_USER=k6_dashboard
- POSTGRES_DB=k6_dashboard
volumes:
- ./timescaledb/data:/var/lib/postgresql/data # Persists database data
healthcheck:
test: ["CMD-SHELL", "pg_isready -U k6_dashboard -d k6_dashboard"]
interval: 5s
timeout: 2s
retries: 6
k6:
image: golang:alpine3.19
environment:
TIMESCALEDB_JDBC_URL: postgresql://k6_dashboard:KrPPCHdYSXz6wMct5tUK@timescaledb:5432/k6_dashboard
volumes:
- ../src/test/k6:/scripts
- ./k6/entrypoint.sh:/usr/local/bin/entrypoint.sh
# You can use caches if you want, but this may slow down your Docker daemon.
# - ./k6/go/modules:/go/pkg/mod
# - ./k6/go/build:/root/.cache/go-build
entrypoint: [ "/usr/local/bin/entrypoint.sh" ]
depends_on:
timescaledb:
condition: service_healthy
grafana:
image: grafana/grafana:10.3.1
ports:
- "3000:3000"
environment:
- GF_AUTH_ANONYMOUS_ORG_ROLE=Admin
- GF_AUTH_ANONYMOUS_ENABLED=true
- GF_AUTH_BASIC_ENABLED=false
volumes:
- ./grafana:/etc/grafana/provisioning/
depends_on:
timescaledb:
condition: service_healthy
volumes:
timescaledb_data: