Currently we cannot import source archives with names different than expected by hardcoded line in Dockerfiles. This worked well for Openstack services' tarballs where we expected SERVICE-* root folder after extraction or kanaka-noVNC for nova-novncproxy docker. The latter fails if one tries to clone or get tarball under other names. This fix allows any archive (tar,tgz,zip) or repo name to be imported into dockerfile. Change-Id: I869a6a19afaf0e93925572746c22b7589b6600c9 Closes-Bug: #1491415
73 lines
2.3 KiB
Django/Jinja
73 lines
2.3 KiB
Django/Jinja
FROM {{ namespace }}/{{ base_distro }}-{{ install_type }}-base:{{ tag }}
|
|
MAINTAINER Kolla Project (https://launchpad.net/kolla)
|
|
|
|
{% if install_type == 'binary' %}
|
|
{% if base_distro in ['fedora', 'centos', 'oraclelinux'] %}
|
|
|
|
RUN yum -y install openstack-keystone \
|
|
python-keystoneclient \
|
|
httpd \
|
|
mod_wsgi \
|
|
&& yum clean all
|
|
|
|
RUN mkdir -p /var/www/cgi-bin/keystone \
|
|
&& cp -a /usr/share/keystone/keystone.wsgi /var/www/cgi-bin/keystone/main \
|
|
&& cp -a /usr/share/keystone/keystone.wsgi /var/www/cgi-bin/keystone/admin \
|
|
&& sed -i -r 's,^(Listen 80),#\1,' /etc/httpd/conf/httpd.conf
|
|
|
|
{% elif base_distro in ['ubuntu', 'debian'] %}
|
|
|
|
RUN apt-get install -y --no-install-recommends \
|
|
apache2 \
|
|
keystone \
|
|
libapache2-mod-wsgi \
|
|
python-keystoneclient \
|
|
&& apt-get clean
|
|
|
|
RUN ln -s /etc/apache2/sites-available/wsgi-keystone.conf /etc/apache2/sites-enabled \
|
|
&& mkdir -p /var/www/cgi-bin/keystone \
|
|
&& cp -a /usr/share/keystone/wsgi.py /var/www/cgi-bin/keystone/main \
|
|
&& cp -a /usr/share/keystone/wsgi.py /var/www/cgi-bin/keystone/admin
|
|
|
|
{% endif %}
|
|
{% elif install_type == 'source' %}
|
|
{% if base_distro in ['fedora', 'centos', 'oraclelinux'] %}
|
|
|
|
RUN yum -y install \
|
|
httpd \
|
|
mod_wsgi \
|
|
&& yum clean all \
|
|
&& sed -i -r 's,^(Listen 80),#\1,' /etc/httpd/conf/httpd.conf
|
|
|
|
{% elif base_distro in ['ubuntu', 'debian'] %}
|
|
|
|
RUN apt-get install -y --no-install-recommends \
|
|
apache2 \
|
|
libapache2-mod-wsgi \
|
|
&& echo > /etc/apache2/ports.conf \
|
|
&& apt-get clean
|
|
|
|
{% endif %}
|
|
|
|
ADD keystone-archive /keystone-source
|
|
RUN ln -s keystone-source/* keystone \
|
|
&& useradd --user-group keystone \
|
|
&& pip --no-cache-dir install /keystone \
|
|
&& mkdir -p /etc/keystone /var/www/cgi-bin/keystone /var/log/apache2 /home/keystone \
|
|
&& cp -r /keystone/etc/* /etc/keystone/ \
|
|
&& cp /keystone/httpd/keystone.py /var/www/cgi-bin/keystone/admin \
|
|
&& cp /keystone/httpd/keystone.py /var/www/cgi-bin/keystone/main \
|
|
&& chown -R keystone: /etc/keystone /var/www/cgi-bin/keystone /var/log/apache2 /home/keystone
|
|
|
|
{% endif %}
|
|
|
|
RUN chown -R keystone: /var/www/cgi-bin/keystone \
|
|
&& chmod 755 /var/www/cgi-bin/keystone/*
|
|
|
|
COPY start.sh /
|
|
COPY config-external.sh /opt/kolla/
|
|
|
|
CMD ["/start.sh"]
|
|
|
|
{{ include_footer }}
|