The open and composable observability and data visualization platform. Visualize metrics, logs, and traces from multiple sources like Prometheus, Loki, Elasticsearch, InfluxDB, Postgres and many more.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
grafana/docker/blocks/graphite/Dockerfile

68 lines
2.4 KiB

from ubuntu:14.10
run apt-get -y update
run apt-get -y install software-properties-common
run apt-get -y install python-software-properties &&\
add-apt-repository ppa:chris-lea/node.js &&\
apt-get -y update
run apt-get -y install python-django-tagging python-simplejson python-memcache \
python-ldap python-cairo python-django python-twisted \
python-pysqlite2 python-support python-pip gunicorn \
supervisor nginx-light nodejs git wget curl
# Install statsd
run mkdir /src && git clone https://github.com/etsy/statsd.git /src/statsd
run cd /usr/local/src && git clone https://github.com/graphite-project/graphite-web.git
run cd /usr/local/src && git clone https://github.com/graphite-project/carbon.git
run cd /usr/local/src && git clone https://github.com/graphite-project/whisper.git
run cd /usr/local/src/whisper && git checkout master && python setup.py install
run cd /usr/local/src/carbon && git checkout 0.9.x && python setup.py install
run cd /usr/local/src/graphite-web && git checkout 0.9.x && python check-dependencies.py; python setup.py install
# statsd
add ./files/statsd_config.js /src/statsd/config.js
# Add graphite config
add ./files/initial_data.json /opt/graphite/webapp/graphite/initial_data.json
add ./files/local_settings.py /opt/graphite/webapp/graphite/local_settings.py
add ./files/carbon.conf /opt/graphite/conf/carbon.conf
add ./files/storage-schemas.conf /opt/graphite/conf/storage-schemas.conf
add ./files/storage-aggregation.conf /opt/graphite/conf/storage-aggregation.conf
add ./files/events_views.py /opt/graphite/webapp/graphite/events/views.py
run mkdir -p /opt/graphite/storage/whisper
run touch /opt/graphite/storage/graphite.db /opt/graphite/storage/index
run chown -R www-data /opt/graphite/storage
run chmod 0775 /opt/graphite/storage /opt/graphite/storage/whisper
run chmod 0664 /opt/graphite/storage/graphite.db
run cd /opt/graphite/webapp/graphite && python manage.py syncdb --noinput
# Add system service config
add ./files/nginx.conf /etc/nginx/nginx.conf
add ./files/supervisord.conf /etc/supervisor/conf.d/supervisord.conf
# graphite
expose 80
# Carbon line receiver port
expose 2003
# Carbon cache query port
expose 7002
# Statsd UDP port
expose 8125/udp
# Statsd Management port
expose 8126
VOLUME ["/var/lib/elasticsearch"]
VOLUME ["/opt/graphite/storage/whisper"]
VOLUME ["/var/lib/log/supervisor"]
cmd ["/usr/bin/supervisord"]
# vim:ts=8:noet: