Skip to content

Merge branch 'main' into feat #1

Merge branch 'main' into feat

Merge branch 'main' into feat #1

version: "3.8"

Check failure on line 1 in .github/workflows/compose.monitoring.yml

View workflow run for this annotation

GitHub Actions / .github/workflows/compose.monitoring.yml

Invalid workflow file

(Line: 1, Col: 1): Unexpected value 'version', (Line: 12, Col: 1): Unexpected value 'services', (Line: 84, Col: 1): Unexpected value 'volumes', (Line: 89, Col: 1): Unexpected value 'networks', (Line: 1, Col: 1): Required property is missing: jobs
# Monitoring overlay for local development and mainnet
# Usage: docker compose -f compose.yaml -f compose.monitoring.yml up
#
# Services added:
# prometheus — scrapes /metrics from the backend
# grafana — dashboards at http://localhost:3001
# alertmanager — routes alerts to configured receivers
# node-exporter — host metrics
services:
prometheus:
image: prom/prometheus:v2.51.0
container_name: trivela-prometheus
restart: unless-stopped
ports:
- "9090:9090"
volumes:
- ./monitoring/prometheus.yml:/etc/prometheus/prometheus.yml:ro
- ./monitoring/alerting/alerting_rules.yml:/etc/prometheus/alerting/alerting_rules.yml:ro
- prometheus_data:/prometheus
command:
- "--config.file=/etc/prometheus/prometheus.yml"
- "--storage.tsdb.path=/prometheus"
- "--storage.tsdb.retention.time=30d"
- "--web.enable-lifecycle"
- "--web.enable-admin-api"
networks:
- trivela-net
grafana:
image: grafana/grafana:10.4.0
container_name: trivela-grafana
restart: unless-stopped
ports:
- "3001:3000"
environment:
- GF_SECURITY_ADMIN_PASSWORD=${GRAFANA_ADMIN_PASSWORD:-trivela-dev}
- GF_USERS_ALLOW_SIGN_UP=false
- GF_DASHBOARDS_DEFAULT_HOME_DASHBOARD_PATH=/var/lib/grafana/dashboards/trivela.json
volumes:
- grafana_data:/var/lib/grafana
- ./monitoring/dashboards:/var/lib/grafana/dashboards:ro
- ./monitoring/grafana/provisioning:/etc/grafana/provisioning:ro
networks:
- trivela-net
depends_on:
- prometheus
alertmanager:
image: prom/alertmanager:v0.27.0
container_name: trivela-alertmanager
restart: unless-stopped
ports:
- "9093:9093"
volumes:
- ./monitoring/alertmanager.yml:/etc/alertmanager/alertmanager.yml:ro
- alertmanager_data:/alertmanager
command:
- "--config.file=/etc/alertmanager/alertmanager.yml"
- "--storage.path=/alertmanager"
networks:
- trivela-net
node-exporter:
image: prom/node-exporter:v1.7.0
container_name: trivela-node-exporter
restart: unless-stopped
ports:
- "9100:9100"
volumes:
- /proc:/host/proc:ro
- /sys:/host/sys:ro
- /:/rootfs:ro
command:
- "--path.procfs=/host/proc"
- "--path.rootfs=/rootfs"
- "--path.sysfs=/host/sys"
- "--collector.filesystem.mount-points-exclude=^/(sys|proc|dev|host|etc)($$|/)"
networks:
- trivela-net
volumes:
prometheus_data:
grafana_data:
alertmanager_data:
networks:
trivela-net:
external: true