mirror of https://github.com/grafana/grafana
parent
3f2a510568
commit
400bd205a8
@ -1,109 +0,0 @@ |
||||
FROM phusion/baseimage:0.9.22 |
||||
MAINTAINER Denys Zhdanov <denis.zhdanov@gmail.com> |
||||
|
||||
RUN apt-get -y update \ |
||||
&& apt-get -y upgrade \ |
||||
&& apt-get -y install vim \ |
||||
nginx \ |
||||
python-dev \ |
||||
python-flup \ |
||||
python-pip \ |
||||
python-ldap \ |
||||
expect \ |
||||
git \ |
||||
memcached \ |
||||
sqlite3 \ |
||||
libffi-dev \ |
||||
libcairo2 \ |
||||
libcairo2-dev \ |
||||
python-cairo \ |
||||
python-rrdtool \ |
||||
pkg-config \ |
||||
nodejs \ |
||||
&& rm -rf /var/lib/apt/lists/* |
||||
|
||||
# choose a timezone at build-time |
||||
# use `--build-arg CONTAINER_TIMEZONE=Europe/Brussels` in `docker build` |
||||
ARG CONTAINER_TIMEZONE |
||||
ENV DEBIAN_FRONTEND noninteractive |
||||
|
||||
RUN if [ ! -z "${CONTAINER_TIMEZONE}" ]; \ |
||||
then ln -sf /usr/share/zoneinfo/$CONTAINER_TIMEZONE /etc/localtime && \ |
||||
dpkg-reconfigure -f noninteractive tzdata; \ |
||||
fi |
||||
|
||||
# fix python dependencies (LTS Django and newer memcached/txAMQP) |
||||
RUN pip install --upgrade pip && \ |
||||
pip install django==1.8.18 \ |
||||
python-memcached==1.53 \ |
||||
txAMQP==0.6.2 |
||||
|
||||
ARG version=1.0.2 |
||||
ARG whisper_version=${version} |
||||
ARG carbon_version=${version} |
||||
ARG graphite_version=${version} |
||||
|
||||
ARG statsd_version=v0.7.2 |
||||
|
||||
# install whisper |
||||
RUN git clone -b ${whisper_version} --depth 1 https://github.com/graphite-project/whisper.git /usr/local/src/whisper |
||||
WORKDIR /usr/local/src/whisper |
||||
RUN python ./setup.py install |
||||
|
||||
# install carbon |
||||
RUN git clone -b ${carbon_version} --depth 1 https://github.com/graphite-project/carbon.git /usr/local/src/carbon |
||||
WORKDIR /usr/local/src/carbon |
||||
RUN pip install -r requirements.txt \ |
||||
&& python ./setup.py install |
||||
|
||||
# install graphite |
||||
RUN git clone -b ${graphite_version} --depth 1 https://github.com/graphite-project/graphite-web.git /usr/local/src/graphite-web |
||||
WORKDIR /usr/local/src/graphite-web |
||||
RUN pip install -r requirements.txt \ |
||||
&& python ./setup.py install |
||||
ADD conf/opt/graphite/conf/*.conf /opt/graphite/conf/ |
||||
ADD conf/opt/graphite/webapp/graphite/local_settings.py /opt/graphite/webapp/graphite/local_settings.py |
||||
# ADD conf/opt/graphite/webapp/graphite/app_settings.py /opt/graphite/webapp/graphite/app_settings.py |
||||
WORKDIR /opt/graphite/webapp |
||||
RUN mkdir -p /var/log/graphite/ \ |
||||
&& PYTHONPATH=/opt/graphite/webapp django-admin.py collectstatic --noinput --settings=graphite.settings |
||||
|
||||
# install statsd |
||||
RUN git clone -b ${statsd_version} https://github.com/etsy/statsd.git /opt/statsd |
||||
ADD conf/opt/statsd/config.js /opt/statsd/config.js |
||||
|
||||
# config nginx |
||||
RUN rm /etc/nginx/sites-enabled/default |
||||
ADD conf/etc/nginx/nginx.conf /etc/nginx/nginx.conf |
||||
ADD conf/etc/nginx/sites-enabled/graphite-statsd.conf /etc/nginx/sites-enabled/graphite-statsd.conf |
||||
|
||||
# init django admin |
||||
ADD conf/usr/local/bin/django_admin_init.exp /usr/local/bin/django_admin_init.exp |
||||
ADD conf/usr/local/bin/manage.sh /usr/local/bin/manage.sh |
||||
RUN chmod +x /usr/local/bin/manage.sh && /usr/local/bin/django_admin_init.exp |
||||
|
||||
# logging support |
||||
RUN mkdir -p /var/log/carbon /var/log/graphite /var/log/nginx |
||||
ADD conf/etc/logrotate.d/graphite-statsd /etc/logrotate.d/graphite-statsd |
||||
|
||||
# daemons |
||||
ADD conf/etc/service/carbon/run /etc/service/carbon/run |
||||
ADD conf/etc/service/carbon-aggregator/run /etc/service/carbon-aggregator/run |
||||
ADD conf/etc/service/graphite/run /etc/service/graphite/run |
||||
ADD conf/etc/service/statsd/run /etc/service/statsd/run |
||||
ADD conf/etc/service/nginx/run /etc/service/nginx/run |
||||
|
||||
# default conf setup |
||||
ADD conf /etc/graphite-statsd/conf |
||||
ADD conf/etc/my_init.d/01_conf_init.sh /etc/my_init.d/01_conf_init.sh |
||||
|
||||
# cleanup |
||||
RUN apt-get clean\ |
||||
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* |
||||
|
||||
# defaults |
||||
EXPOSE 80 2003-2004 2023-2024 8125/udp 8126 |
||||
VOLUME ["/opt/graphite/conf", "/opt/graphite/storage", "/etc/nginx", "/opt/statsd", "/etc/logrotate.d", "/var/log"] |
||||
WORKDIR / |
||||
ENV HOME /root |
||||
CMD ["/sbin/my_init"] |
Loading…
Reference in new issue