ソースを参照

tech(docker-dev): update dev docker for graphite

bergquist 10 年 前
コミット
a85bda13db

+ 28 - 46
docker/blocks/graphite/Dockerfile

@@ -1,68 +1,50 @@
-from	ubuntu:14.10
+from  ubuntu:14.04
 
-run	apt-get -y update
+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 apt-get -y install libcairo2-dev libffi-dev pkg-config python-dev python-pip fontconfig apache2 libapache2-mod-wsgi git-core collectd memcached gcc g++ make supervisor nginx-light gunicorn
 
 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
+run cd /usr/local/src/carbon && git checkout 0.9.x && pip install -r requirements.txt; python setup.py install
+run cd /usr/local/src/graphite-web && git checkout 0.9.x && pip install -r requirements.txt; python check-dependencies.py; python setup.py install
 
 # 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 ./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 ./files/my_htpasswd /etc/nginx/.htpasswd
 
 # Add system service config
-add	./files/nginx.conf /etc/nginx/nginx.conf
-add	./files/supervisord.conf /etc/supervisor/conf.d/supervisord.conf
-
+add ./files/nginx.conf /etc/nginx/nginx.conf
+add ./files/supervisord.conf /etc/supervisor/conf.d/supervisord.conf
+# Nginx
+#
 # graphite
-expose	80
+expose  80
 
 # Carbon line receiver port
-expose	2003
+expose  2003
 # Carbon cache query port
-expose	7002
-
-# Statsd UDP port
-expose	8125/udp
-# Statsd Management port
-expose	8126
+expose  7002
 
-VOLUME ["/var/lib/elasticsearch"]
 VOLUME ["/opt/graphite/storage/whisper"]
 VOLUME ["/var/lib/log/supervisor"]
 
-cmd	["/usr/bin/supervisord"]
+cmd ["/usr/bin/supervisord"]
 
 # vim:ts=8:noet:

+ 7 - 1
docker/blocks/graphite/fig

@@ -1,4 +1,10 @@
 graphite:
   build: blocks/graphite
   ports:
-    - "8776:80"
+    - "8080:80"
+    - "2003:2003"
+  volumes:
+    - /var/docker/gfdev/graphite:/opt/graphite/storage/whisper
+    - /etc/localtime:/etc/localtime:ro
+    - /etc/timezone:/etc/timezone:ro
+

+ 1 - 0
docker/blocks/graphite/files/my_htpasswd

@@ -0,0 +1 @@
+grafana:$apr1$4R/20xhC$8t37jPP5dbcLr48btdkU//

+ 0 - 7
docker/blocks/graphite/files/supervisord.conf

@@ -24,10 +24,3 @@ stdout_logfile = /var/log/supervisor/%(program_name)s.log
 stderr_logfile = /var/log/supervisor/%(program_name)s.log
 autorestart = true
 
-[program:statsd]
-;user = www-data
-command = /usr/bin/node /src/statsd/stats.js /src/statsd/config.js
-stdout_logfile = /var/log/supervisor/%(program_name)s.log
-stderr_logfile = /var/log/supervisor/%(program_name)s.log
-autorestart = true
-