blob: a784ea1493bf559227a432d42301e1fcae2239ee [file] [log] [blame]
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
services:
graphite:
image: graphiteapp/graphite-statsd
container_name: graphite
ports:
- "80:80"
- "2003-2004:2003-2004"
- "2023-2024:2023-2024"
- "8125:8125/udp"
- "8126:8126"
networks:
- otava-graphite
grafana:
image: grafana/grafana
container_name: grafana
environment:
- GF_SECURITY_ADMIN_PASSWORD=admin
depends_on:
- graphite
ports:
- "3000:3000"
volumes:
- ./grafana:/etc/grafana/provisioning
networks:
- otava-graphite
data-sender:
image: bash
container_name: data-sender
depends_on:
- graphite
volumes:
- ./datagen:/datagen
entrypoint: ["bash", "/datagen/datagen.sh"]
networks:
- otava-graphite
otava:
build:
context: ../..
dockerfile: Dockerfile
container_name: otava
depends_on:
- graphite
environment:
GRAPHITE_ADDRESS: http://graphite/
GRAFANA_ADDRESS: http://grafana:3000/
GRAFANA_USER: admin
GRAFANA_PASSWORD: admin
OTAVA_CONFIG: examples/graphite/otava.yaml
networks:
- otava-graphite
networks:
otava-graphite:
driver: bridge
# TODO:
# 3. make sure Otava can connect to graphite and query the data
# 4. make sure it annotates the dashboard correctly