1
0
Fork 0
graphite-ish/docker-compose.yml

57 lines
1.3 KiB
YAML

version: '2'
services:
# Go Carbon (Carbon replacement)
# Takes care of writing metrics to database and data retention
carbon:
image: carbon:v1
build:
dockerfile: Carbon.dockerfile
context: .
ports:
- '2003:2003/udp'
- '2004:2004/udp'
- '7002:7002'
volumes:
- /data/graphite/whisper:/data/graphite/whisper
- /graphite-config
# Brubeck (StatsD replacement)
# Aggregates metrics before sending them to Carbon
brubeck:
image: brubeck:v1
build:
dockerfile: Brubeck.dockerfile
context: .
ports:
- '8090:8090'
- '8126:8126/udp'
- '9126:9126/udp'
depends_on:
- carbon
# Graphite API (yep, almost original Graphite Web)
# Provides API for reading metrics
graphite-api:
image: brutasse/graphite-api:latest
build:
context: https://github.com/brutasse/graphite-api.git
environment:
BIND_ADDRESS: 0.0.0.0
PORT: 8000
GRAPHITE_API_CONFIG: /graphite-config/graphite-api.yml
ports:
- '8080:8000'
volumes_from:
- carbon
depends_on:
- carbon
# Grafana
# Metrics dashboard
grafana:
image: grafana:v1
build:
dockerfile: Grafana.dockerfile
context: .
ports:
- '3000:3000'
depends_on:
- graphite-api