- Basic HTML application to render Grafana boards
- Basic SpringBoot application with exposing Prometheus metrics
- Prometheus server
- Grafana server admin/admin
docker compose --profile all up # run all
docker compose --profile monitoring up # run monitoring stack only (prometheus, grafana, node-exporter)
docker compose --profile testing up # run testing stack only (sonarqube and db for it)
docker compose --profile app up # run applications only (fronend, backend)
- run monitoring stack
docker compose --profile monitoring up
- create Grafana API user
- login to Grafana ("admin/admin" if default password used)
- navigate to "Configuration" -> "API Keys" on left menu
- create new key and copy it
- store created API_KEY in ".env" configuration file
- run applications stack
docker compose --profile app up
- navigate to client app
- Before run docker, execute in powershell:
wsl -d docker-desktop
sysctl -w vm.max_map_count=262144
- Run docker:
docker compose --profile testing up
- Navigate to SonarQube portal (
admin
/admin
) - Create new project with key "monitoring-stack"
- Register new key and store it in
gradle.properties
- Run scan:
./gradlew sonarqube