blob: 5dc62a67f73711f2e9b9f0208a9733bd5982a2cd [file] [log] [blame]
Andy Baviera54e9552016-01-28 13:07:56 -05001FROM ubuntu:14.04.3
Andy Bavierbeef3fb2016-01-06 16:40:00 -05002
3# XXX Workaround for docker bug:
4# https://github.com/docker/docker/issues/6345
5# Kernel 3.15 breaks docker, uss the line below as a workaround
6# until there is a fix
7RUN ln -s -f /bin/true /usr/bin/chfn
8# XXX End workaround
9
10# Install.
11RUN DEBIAN_FRONTEND=noninteractive apt-get update && apt-get install -y \
12 curl \
13 gcc \
14 geoip-database \
15 git \
16 graphviz \
17 graphviz-dev \
18 libgeoip1 \
19 libxslt1.1 \
20 libxslt1-dev \
21 libyaml-dev \
22 m4 \
23 pkg-config \
24 python-dev \
25 python-httplib2 \
26 python-pip \
27 python-psycopg2 \
28 python-pycurl \
29 python-setuptools \
30 tar \
31 wget \
32##### observer dependencies
33 python-keystoneclient \
34 python-novaclient \
35 python-neutronclient \
36 python-glanceclient \
Jeremy Moweryc8843ab2016-04-16 12:21:04 -070037 python-ceilometerclient
Andy Bavierbeef3fb2016-01-06 16:40:00 -050038
39RUN pip install \
40 django==1.7 \
41 django-bitfield \
42 django-crispy-forms \
43 django-encrypted-fields \
44 django-extensions \
Andy Bavier06217772016-01-10 21:35:56 -050045 django-filter==0.11.0 \
Andy Bavierbeef3fb2016-01-06 16:40:00 -050046 django-geoposition \
47 django-ipware \
48 django_rest_swagger \
49 django-suit==0.3a1 \
50 django-timezones \
Scott Bakera8b38632016-03-29 13:37:48 -070051 djangorestframework==3.3.3 \
Andy Bavierbeef3fb2016-01-06 16:40:00 -050052 dnslib \
Jeremy Mowerya7ae8022016-04-21 21:35:09 -070053 jinja2 \
Andy Bavierbeef3fb2016-01-06 16:40:00 -050054 lxml \
55 markdown \
56 netaddr \
57 pyOpenSSL \
58 psycopg2 \
59 python-ceilometerclient \
60 python-dateutil \
61 python-keyczar \
Andy Bavier42dabe02016-04-06 14:23:02 -040062 python-logstash \
Andy Bavierbeef3fb2016-01-06 16:40:00 -050063 pygraphviz \
64 pytz \
65 pyyaml \
66 requests
67
68RUN easy_install --upgrade httplib2
69
70RUN easy_install \
71 python_gflags \
72 google_api_python_client \
73 httplib2.ca_certs_locater
74
Andy Baviera54e9552016-01-28 13:07:56 -050075ADD http://code.jquery.com/jquery-1.9.1.min.js /usr/local/lib/python2.7/dist-packages/suit/static/suit/js/
Andy Bavierbeef3fb2016-01-06 16:40:00 -050076
77# Install XOS
78ADD xos /opt/xos
Scott Baker0e1a0562016-01-14 09:38:34 -080079RUN chmod +x /opt/xos/tools/xos-manage
80RUN /opt/xos/tools/xos-manage genkeys
Andy Bavierbeef3fb2016-01-06 16:40:00 -050081
82# install Tosca engine
83RUN chmod +x /opt/xos/tosca/run.py
84RUN bash /opt/xos/tosca/install_tosca.sh
85
86EXPOSE 8000
87
88# Set environment variables.
89ENV HOME /root
Andy Bavierbeef3fb2016-01-06 16:40:00 -050090
91# Define working directory.
92WORKDIR /opt/xos
93
94# Define default command.
Andy Baviera54e9552016-01-28 13:07:56 -050095CMD update-ca-certificates && python /opt/xos/manage.py runserver 0.0.0.0:8000 --insecure --makemigrations