mirror of
https://github.com/vimagick/dockerfiles.git
synced 2024-11-24 08:52:15 +02:00
add graphite
This commit is contained in:
parent
d05677db76
commit
14e26a8af7
@ -60,6 +60,7 @@ A collection of delicious docker recipes.
|
||||
- [x] collectd
|
||||
- [x] errbot :octocat:
|
||||
- [x] freeradius
|
||||
- [x] graphite
|
||||
- [x] h2o
|
||||
- [x] httpbin :+1:
|
||||
- [x] hubot :octocat:
|
||||
|
57
graphite/Dockerfile
Normal file
57
graphite/Dockerfile
Normal file
@ -0,0 +1,57 @@
|
||||
#
|
||||
# Dockerfile for graphite
|
||||
#
|
||||
|
||||
FROM alpine
|
||||
MAINTAINER kev <noreply@easypi.info>
|
||||
|
||||
ENV PATH=$PATH:/opt/graphite/bin
|
||||
ENV PYTHONPATH=/opt/graphite/lib:/opt/graphite/webapp
|
||||
ENV GRAPHITE_CONF_DIR=/opt/graphite/conf
|
||||
ENV GRAPHITE_STORAGE_DIR=/opt/graphite/storage
|
||||
|
||||
WORKDIR /opt/graphite
|
||||
|
||||
RUN set -xe \
|
||||
&& apk update \
|
||||
&& apk add build-base \
|
||||
cairo \
|
||||
curl \
|
||||
git \
|
||||
libffi-dev \
|
||||
python \
|
||||
python-dev \
|
||||
&& curl -sSL https://bootstrap.pypa.io/get-pip.py | python \
|
||||
&& pip install gunicorn \
|
||||
supervisor \
|
||||
https://github.com/graphite-project/whisper/tarball/master \
|
||||
https://github.com/graphite-project/carbon/tarball/master \
|
||||
https://github.com/graphite-project/graphite-web/tarball/master \
|
||||
-r https://github.com/graphite-project/graphite-web/raw/master/requirements.txt \
|
||||
&& cd conf \
|
||||
&& cp carbon.conf.example carbon.conf \
|
||||
&& cp storage-schemas.conf.example storage-schemas.conf \
|
||||
&& cd ../webapp \
|
||||
&& echo "SECRET_KEY = '$(head -c 16 /dev/urandom | base64)'" > graphite/local_settings.py \
|
||||
&& curl -sSL https://github.com/graphite-project/graphite-web/raw/master/webapp/manage.py > manage.py \
|
||||
&& python manage.py migrate --run-syncdb --noinput \
|
||||
&& apk del build-base \
|
||||
curl \
|
||||
git \
|
||||
libffi-dev \
|
||||
python-dev \
|
||||
&& rm -rf /root/.cache/pip \
|
||||
/var/cache/apk/*
|
||||
|
||||
COPY supervisord.conf /etc/supervisor/
|
||||
|
||||
VOLUME $GRAPHITE_CONF_DIR \
|
||||
$GRAPHITE_STORAGE_DIR
|
||||
|
||||
EXPOSE 2003 \
|
||||
2004 \
|
||||
7002 \
|
||||
8080 \
|
||||
9001
|
||||
|
||||
CMD ["supervisord", "-n"]
|
10
graphite/README.md
Normal file
10
graphite/README.md
Normal file
@ -0,0 +1,10 @@
|
||||
graphite
|
||||
========
|
||||
|
||||
[Graphite][1] does three things:
|
||||
|
||||
- Kick ass.
|
||||
- Chew bubblegum.
|
||||
- Make it easy to store and graph metrics.
|
||||
|
||||
[1]: http://graphiteapp.org/
|
9
graphite/docker-compose.yml
Normal file
9
graphite/docker-compose.yml
Normal file
@ -0,0 +1,9 @@
|
||||
graphite:
|
||||
image: vimagick/graphite
|
||||
ports:
|
||||
- 2003:2003
|
||||
- 2004:2004
|
||||
- 7002:7002
|
||||
- 8080:8080
|
||||
- 9001:9001
|
||||
restart: always
|
22
graphite/supervisord.conf
Normal file
22
graphite/supervisord.conf
Normal file
@ -0,0 +1,22 @@
|
||||
[supervisord]
|
||||
loglevel=info
|
||||
|
||||
[rpcinterface:supervisor]
|
||||
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface
|
||||
|
||||
[inet_http_server]
|
||||
port=0.0.0.0:9001
|
||||
|
||||
[supervisorctl]
|
||||
serverurl=http://127.0.0.1:9001
|
||||
|
||||
[program:carbon-cache]
|
||||
command = carbon-cache.py --debug start
|
||||
redirect_stderr = true
|
||||
autorestart = true
|
||||
|
||||
[program:graphite-webapp]
|
||||
command = gunicorn -b :8080 graphite.wsgi:application
|
||||
directory = /opt/graphite/webapp
|
||||
redirect_stderr = true
|
||||
autorestart = true
|
Loading…
Reference in New Issue
Block a user