blob: 6e7f1029f7dc93c47155d780f9681343f8182a43 [file] [log] [blame]
# Dockerfile.base
# This image isn't used, but installs the prereqs for the other XOS images
FROM ubuntu:14.04.5
MAINTAINER Zack Williams <zdw@cs.arizona.edu>
# Label image
ARG org_label_schema_schema_version=1.0
ARG org_label_schema_name=xos-base
ARG org_label_schema_version=unknown
ARG org_label_schema_vcs_url=unknown
ARG org_label_schema_vcs_ref=unknown
ARG org_label_schema_build_date=unknown
ARG org_opencord_vcs_commit_date=unknown
LABEL org.label-schema.schema-version=$org_label_schema_schema_version \
org.label-schema.name=$org_label_schema_name \
org.label-schema.version=$org_label_schema_version \
org.label-schema.vcs-url=$org_label_schema_vcs_url \
org.label-schema.vcs-ref=$org_label_schema_vcs_ref \
org.label-schema.build-date=$org_label_schema_build_date \
org.opencord.vcs-commit-date=$org_opencord_vcs_commit_date
# Install apt packages, including docker
RUN DEBIAN_FRONTEND=noninteractive apt-get update && apt-get install -y \
apt-transport-https \
curl \
cython \
gcc \
geoip-database \
git \
graphviz \
graphviz-dev \
libcurl4-gnutls-dev \
libffi-dev \
libgeoip1 \
libpq-dev \
libxslt1-dev \
libxslt1.1 \
libyaml-dev \
m4 \
openssh-client \
pkg-config \
python-dev \
python-pip \
rsync \
software-properties-common \
supervisor \
unzip \
wget \
&& apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 \
--recv-keys 58118E89F3A912897C070ADBF76221572C52609D \
&& echo "deb https://apt.dockerproject.org/repo ubuntu-trusty main" | \
sudo tee /etc/apt/sources.list.d/docker.list \
&& apt-get update \
&& apt-get install -y docker-engine \
&& rm -rf /var/lib/apt/lists/* \
&& mkdir /var/xos \
&& pip freeze > /var/xos/pip_freeze_apt_`date -u +%Y%m%dT%H%M%S`
# Install python packages with pip
COPY pip_requirements.txt /tmp/pip_requirements.txt
# Upgrade requests from apt installed version
RUN pip install --no-deps -U -I requests==2.11.1 \
&& pip install --no-deps -r /tmp/pip_requirements.txt \
&& pip freeze > /var/xos/pip_freeze_pip_up_`date -u +%Y%m%dT%H%M%S`
# Copy over ansible hosts
COPY ansible-hosts /etc/ansible/hosts
# Install jQuery
ENV JQUERY_DL_URL http://code.jquery.com/jquery-1.12.4.min.js
ENV JQUERY_SHA256 668b046d12db350ccba6728890476b3efee53b2f42dbb84743e5e9f1ae0cc404
RUN curl -fLsS $JQUERY_DL_URL -o jquery.min.js && \
echo "$JQUERY_SHA256 jquery.min.js" | sha256sum -c - && \
mv jquery.min.js /usr/local/lib/python2.7/dist-packages/suit/static/suit/js/
# Install jQueryUI
ENV JQUERYUI_DL_URL https://jqueryui.com/resources/download/jquery-ui-1.11.4.zip
ENV JQUERYUI_SHA256 503e4c0f109bf627aff87a424edc760608ec15e4a6e37f217a083ca682543e32
RUN curl -fLsS $JQUERYUI_DL_URL -o jquery-ui.zip && \
echo "$JQUERYUI_SHA256 jquery-ui.zip" | sha256sum -c - && \
unzip jquery-ui.zip && \
mv jquery-ui-*/jquery-ui.min.js /usr/local/lib/python2.7/dist-packages/suit/static/suit/js/ && \
rm -rf jquery-ui.zip jquery-ui-*
ENV JQUERYUI_THEMES_DL_URL http://jqueryui.com/resources/download/jquery-ui-themes-1.11.4.zip
ENV JQUERYUI_THEMES_SHA256 df2b9cb084095ea24129a6a54587a1d9d7ae4bcd68bf5ea2957eb3d4d18fe884
RUN curl -fLsS $JQUERYUI_THEMES_DL_URL -o jquery-ui-themes.zip && \
echo "$JQUERYUI_THEMES_SHA256 jquery-ui-themes.zip" | sha256sum -c - && \
unzip jquery-ui-themes.zip && \
mv jquery-ui-themes-*/themes/smoothness/jquery-ui.min.css /usr/local/lib/python2.7/dist-packages/suit/static/suit/css/ && \
rm -rf jquery-ui-themes.zip jquery-ui-themes-*