-
Notifications
You must be signed in to change notification settings - Fork 15
/
Dockerfile
62 lines (42 loc) · 1.46 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
FROM carver/git
MAINTAINER Jason Carver <[email protected]>
#The command order is intended to optimize for least-likely to change first, to speed up builds
RUN mkdir /var/log/skyline
RUN mkdir /var/run/skyline
RUN mkdir /var/log/redis
RUN apt-get install -y python-setuptools
RUN easy_install pip
#Need sudo as a NOOP
RUN apt-get install -y sudo
#Redis
RUN apt-get install -y wget
RUN wget http://download.redis.io/releases/redis-2.6.16.tar.gz
RUN tar --extract --gzip --directory /opt --file redis-2.6.16.tar.gz
RUN apt-get install -y gcc build-essential
RUN cd /opt/redis-2.6.16 && make
ENV PATH $PATH:/opt/redis-2.6.16/src
#numpy needs python build tools
RUN apt-get install -y python-dev
RUN pip install numpy
#scipy requires universe
RUN echo "deb http://archive.ubuntu.com/ubuntu precise main universe" > /etc/apt/sources.list
RUN apt-get update
RUN apt-get install -y python-scipy
RUN pip install pandas
RUN pip install patsy
RUN pip install statsmodels
RUN pip install msgpack-python
RUN git clone https://github.com/etsy/skyline.git /opt/skyline
RUN pip install -r /opt/skyline/requirements.txt
RUN cp /opt/skyline/src/settings.py.example /opt/skyline/src/settings.py
#security updates
RUN apt-get upgrade -y
ADD skyline-start.sh /skyline-start.sh
RUN chmod +x skyline-start.sh
ADD skyline-settings.py /opt/skyline/src/settings.py
WORKDIR /opt/skyline/bin
ENTRYPOINT ["/skyline-start.sh"]
#skyline webserver port
EXPOSE :1500
#graphite collection port
EXPOSE :2024