32 lines
1.8 KiB
Django/Jinja
32 lines
1.8 KiB
Django/Jinja
FROM {{ namespace }}/openstack-base:{{ tag }}
|
|
MAINTAINER {{ maintainer }}
|
|
|
|
RUN apt-get update \
|
|
&& apt-get install --no-install-recommends -q -y -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" \
|
|
apache2 \
|
|
libapache2-mod-wsgi \
|
|
&& ln -s ../mods-available/headers.load /etc/apache2/mods-enabled/headers.load
|
|
|
|
{{ copy_sources("openstack/horizon", "/horizon") }}
|
|
{{ copy_sources("openstack/sahara-dashboard", "/sahara-dashboard") }}
|
|
|
|
RUN mkdir -p /etc/openstack-dashboard /home/horizon /var/www/cgi-bin/horizon \
|
|
&& cp -a /sahara-dashboard/sahara_dashboard/enabled/* /horizon/openstack_dashboard/local/enabled/ \
|
|
&& /var/lib/microservices/venv/bin/pip --no-cache-dir install --upgrade -c /horizon/requirements.txt -c /sahara-dashboard/requirements.txt /horizon /sahara-dashboard \
|
|
&& useradd --user-group horizon \
|
|
&& ln -s /etc/openstack-dashboard/local_settings /var/lib/microservices/venv/lib/python2.7/site-packages/openstack_dashboard/local/local_settings.py \
|
|
&& cp -r /horizon/openstack_dashboard/conf/* /etc/openstack-dashboard/ \
|
|
&& cp /horizon/manage.py /var/lib/microservices/venv/bin/manage.py \
|
|
&& /var/lib/microservices/venv/bin/python /var/lib/microservices/venv/bin/manage.py collectstatic --noinput --clear \
|
|
&& chown -R horizon: /etc/openstack-dashboard /home/horizon /var/lib/microservices/venv/lib/python2.7/site-packages/static /horizon
|
|
|
|
ENV PATH /var/lib/venv/bin:$PATH
|
|
|
|
# Workaround for https://bugs.launchpad.net/osprofiler/+bug/1361235
|
|
RUN sed -i "s#'../..'#os.path.realpath('../..')#" /var/lib/microservices/venv/lib/python2.7/site-packages/openstack_dashboard/wsgi/django.wsgi
|
|
|
|
COPY daemon.sh /usr/local/bin/daemon.sh
|
|
COPY horizon_sudoers /etc/sudoers.d/horizon_sudoers
|
|
RUN chmod 755 /usr/local/bin/daemon.sh \
|
|
&& chmod 440 /etc/sudoers.d/horizon_sudoers
|