version: '3' services: grafana: image: grafana/grafana:10.3.1 hostname: grafana depends_on: - graphite links: - graphite ports: - "3000:3000" environment: # See https://grafana.com/docs/grafana/latest/setup-grafana/configure-grafana/ - GF_SECURITY_ADMIN_PASSWORD=hdeAga76VG6ga7plZ1 - GF_SECURITY_ADMIN_USER=sitespeedio - GF_AUTH_ANONYMOUS_ENABLED=true - GF_USERS_ALLOW_SIGN_UP=false - GF_USERS_ALLOW_ORG_CREATE=false - GF_INSTALL_PLUGINS=grafana-piechart-panel,marcusolsson-json-datasource,marcusolsson-dynamictext-panel - GF_DASHBOARDS_DEFAULT_HOME_DASHBOARD_PATH=/var/lib/grafana/dashboards/Welcome.json volumes: - grafana:/var/lib/grafana - ./grafana/provisioning/datasources:/etc/grafana/provisioning/datasources - ./grafana/provisioning/dashboards:/etc/grafana/provisioning/dashboards - ./grafana/provisioning/dashboards:/var/lib/grafana/dashboards restart: always graphite: image: sitespeedio/graphite:1.1.10-3 hostname: graphite ports: - "2003:2003" - "8080:80" restart: always volumes: # In production, you should configure/map these to your container # Make sure whisper and graphite.db/grafana.db lives outside your container # https://www.sitespeed.io/documentation/sitespeed.io/graphite/#graphite-for-production-important - whisper:/opt/graphite/storage/whisper # Download an empty graphite.db from https://github.com/sitespeedio/sitespeed.io/tree/main/docker/graphite # - /absolute/path/to/graphite/graphite.db:/opt/graphite/storage/graphite.db # # And put the configuration files on your server, configure them as you need # Download from https://github.com/sitespeedio/docker-graphite-statsd/tree/main/conf/graphite # - /absolute/path/to/graphite/conf/storage-schemas.conf:/opt/graphite/conf/storage-schemas.conf # - /absolute/path/to/graphite/conf/storage-aggregation.conf:/opt/graphite/conf/storage-aggregation.conf # - /absolute/path/to/graphite/conf/carbon.conf:/opt/graphite/conf/carbon.conf volumes: grafana: whisper: