Tony Mack | fa32044 | 2015-10-30 18:07:42 +0000 | [diff] [blame] | 1 | FROM ubuntu:14.04.3 |
Tony Mack | 7c162e7 | 2015-10-30 15:22:20 +0000 | [diff] [blame] | 2 | |
Tony Mack | fa32044 | 2015-10-30 18:07:42 +0000 | [diff] [blame] | 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 |
| 7 | RUN ln -s -f /bin/true /usr/bin/chfn |
| 8 | # XXX End workaround |
| 9 | |
| 10 | # Install. |
Tony Mack | 70b05da | 2015-10-31 18:34:35 +0000 | [diff] [blame] | 11 | RUN DEBIAN_FRONTEND=noninteractive apt-get update && apt-get install -y \ |
Tony Mack | a06f1a9 | 2015-10-30 21:59:04 +0000 | [diff] [blame] | 12 | curl \ |
| 13 | gcc \ |
| 14 | geoip-database \ |
Tony Mack | 7c162e7 | 2015-10-30 15:22:20 +0000 | [diff] [blame] | 15 | git \ |
| 16 | graphviz \ |
| 17 | graphviz-dev \ |
Tony Mack | a06f1a9 | 2015-10-30 21:59:04 +0000 | [diff] [blame] | 18 | libgeoip1 \ |
Tony Mack | 7c162e7 | 2015-10-30 15:22:20 +0000 | [diff] [blame] | 19 | libxslt1.1 \ |
| 20 | libxslt1-dev \ |
| 21 | libyaml-dev \ |
Tony Mack | a06f1a9 | 2015-10-30 21:59:04 +0000 | [diff] [blame] | 22 | m4 \ |
Tony Mack | 7c162e7 | 2015-10-30 15:22:20 +0000 | [diff] [blame] | 23 | pkg-config \ |
Tony Mack | a06f1a9 | 2015-10-30 21:59:04 +0000 | [diff] [blame] | 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 \ |
| 37 | python-ceilometerclient |
Tony Mack | 7c162e7 | 2015-10-30 15:22:20 +0000 | [diff] [blame] | 38 | |
Tony Mack | a06f1a9 | 2015-10-30 21:59:04 +0000 | [diff] [blame] | 39 | RUN pip install -U \ |
Tony Mack | fa32044 | 2015-10-30 18:07:42 +0000 | [diff] [blame] | 40 | django==1.7 \ |
| 41 | django-bitfield \ |
| 42 | django-crispy-forms \ |
| 43 | django-encrypted-fields \ |
Tony Mack | a06f1a9 | 2015-10-30 21:59:04 +0000 | [diff] [blame] | 44 | django_evolution \ |
| 45 | django-extensions \ |
Tony Mack | fa32044 | 2015-10-30 18:07:42 +0000 | [diff] [blame] | 46 | django-filter \ |
| 47 | django-geoposition \ |
| 48 | django-ipware \ |
| 49 | django_rest_swagger \ |
| 50 | django-suit \ |
| 51 | django-timezones \ |
| 52 | djangorestframework==2.4.4 \ |
Tony Mack | a06f1a9 | 2015-10-30 21:59:04 +0000 | [diff] [blame] | 53 | dnslib \ |
| 54 | google_api_python_client \ |
| 55 | httplib2 \ |
| 56 | httplib2.ca_certs_locater \ |
Tony Mack | fa32044 | 2015-10-30 18:07:42 +0000 | [diff] [blame] | 57 | lxml \ |
| 58 | markdown \ |
| 59 | netaddr \ |
| 60 | python-dateutil \ |
Tony Mack | a06f1a9 | 2015-10-30 21:59:04 +0000 | [diff] [blame] | 61 | python_gflags \ |
Tony Mack | fa32044 | 2015-10-30 18:07:42 +0000 | [diff] [blame] | 62 | python-keyczar \ |
Tony Mack | a06f1a9 | 2015-10-30 21:59:04 +0000 | [diff] [blame] | 63 | pygraphviz \ |
Tony Mack | fa32044 | 2015-10-30 18:07:42 +0000 | [diff] [blame] | 64 | pytz \ |
| 65 | pyyaml \ |
| 66 | requests |
Tony Mack | 7c162e7 | 2015-10-30 15:22:20 +0000 | [diff] [blame] | 67 | |
Tony Mack | d7fafe6 | 2015-10-31 19:06:58 +0000 | [diff] [blame] | 68 | ADD http://code.jquery.com/jquery-1.9.1.min.js /usr/local/lib/python2.7/dist-packages/suit/static/suit/js/ |
| 69 | |
Tony Mack | a06f1a9 | 2015-10-30 21:59:04 +0000 | [diff] [blame] | 70 | # Install XOS |
Tony Mack | d7fafe6 | 2015-10-31 19:06:58 +0000 | [diff] [blame] | 71 | RUN git clone git://github.com/open-cloud/xos.git /tmp/xos && \ |
| 72 | mv /tmp/xos/xos /opt/ && \ |
| 73 | chmod +x /opt/xos/scripts/opencloud && \ |
| 74 | /opt/xos/scripts/opencloud genkeys |
Tony Mack | fa32044 | 2015-10-30 18:07:42 +0000 | [diff] [blame] | 75 | |
Tony Mack | a06f1a9 | 2015-10-30 21:59:04 +0000 | [diff] [blame] | 76 | # install Tosca engine |
| 77 | RUN bash /opt/xos/tosca/install_tosca.sh |
Tony Mack | fa32044 | 2015-10-30 18:07:42 +0000 | [diff] [blame] | 78 | |
Tony Mack | fa32044 | 2015-10-30 18:07:42 +0000 | [diff] [blame] | 79 | EXPOSE 8000 |
| 80 | |
| 81 | # Set environment variables. |
| 82 | ENV HOME /root |
| 83 | |
| 84 | # Define working directory. |
| 85 | WORKDIR /root |
| 86 | |
| 87 | # Define default command. |
Tony Mack | a06f1a9 | 2015-10-30 21:59:04 +0000 | [diff] [blame] | 88 | CMD python /opt/xos/manage.py runserver 0.0.0.0:8000 --insecure |