ddb7cd88c5
*** Requires Docker 1.10 which is released *** Documentation will be in the next patch. You must set the following in your docker.service daemon control file for propogation to work: [Service] MountFlags=shared ====================================================================== Thanks to mount propagation in Docker 1.10 we can use thin containers finally! This is extremely useful to operators since now they can access the network namespaces from the hosts (outside the neutron container). But additionally it allows us to implement the VPN agent and other services easier. Neutron containers and the neutron role are brought into the standards of the new Kolla. Completely with drop-root and ansible formating updates. The ip_wrapper.py script was (thankfully) not needed so it has been removed from the repo. Partially-Implements: blueprint upgrade-neutron Change-Id: Iaf5555283240457e1912459f397a6393d886fba1
67 lines
2.2 KiB
Django/Jinja
67 lines
2.2 KiB
Django/Jinja
FROM {{ namespace }}/{{ image_prefix }}openstack-base:{{ tag }}
|
|
MAINTAINER {{ maintainer }}
|
|
|
|
{% if install_type == 'binary' %}
|
|
{% if base_distro in ['centos', 'fedora', 'oraclelinux', 'rhel'] %}
|
|
|
|
# TODO(mandre) remove python-oslo-reports once RDO package is fixed
|
|
RUN yum -y install \
|
|
openstack-neutron \
|
|
openstack-neutron-ml2 \
|
|
openvswitch \
|
|
python-oslo-reports \
|
|
&& yum clean all
|
|
|
|
{% elif base_distro in ['ubuntu'] %}
|
|
|
|
RUN apt-get install -y --no-install-recommends \
|
|
neutron-plugin-ml2 \
|
|
openvswitch-switch \
|
|
neutron-server \
|
|
&& apt-get clean \
|
|
&& mkdir -p /usr/share/neutron \
|
|
&& ln -s /etc/neutron/api-paste.ini /usr/share/neutron/api-paste.ini
|
|
|
|
{% endif %}
|
|
{% elif install_type == 'source' %}
|
|
{% if base_distro in ['centos', 'fedora', 'oraclelinux', 'rhel'] %}
|
|
|
|
RUN yum -y install \
|
|
uuid \
|
|
dnsmasq \
|
|
ipset \
|
|
openvswitch \
|
|
&& yum clean all
|
|
|
|
{% elif base_distro in ['ubuntu', 'debian'] %}
|
|
|
|
RUN apt-get install -y --no-install-recommends \
|
|
arping \
|
|
dnsmasq \
|
|
ipset \
|
|
iptables \
|
|
openvswitch-switch \
|
|
uuid-runtime \
|
|
&& apt-get clean
|
|
|
|
{% endif %}
|
|
|
|
ADD neutron-base-archive /neutron-base-source
|
|
RUN ln -s neutron-base-source/* neutron \
|
|
&& useradd --user-group neutron \
|
|
&& /var/lib/kolla/venv/bin/pip --no-cache-dir install --upgrade -c requirements/upper-constraints.txt /neutron \
|
|
&& mkdir -p /etc/neutron /usr/share/neutron /var/lib/neutron /var/log/neutron /home/neutron \
|
|
&& cp -r /neutron/etc/* /etc/neutron/ \
|
|
&& cp -r /neutron/etc/neutron/* /etc/neutron/ \
|
|
&& cp /neutron/etc/api-paste.ini /usr/share/neutron \
|
|
&& mv /etc/neutron/neutron/ /etc/neutron/plugins/ \
|
|
&& chown -R neutron: /etc/neutron /usr/share/neutron /var/lib/neutron /var/log/neutron /home/neutron \
|
|
&& sed -i 's|^exec_dirs.*|exec_dirs=/var/lib/kolla/venv/bin,/sbin,/usr/sbin,/bin,/usr/bin,/usr/local/bin,/usr/local/sbin|g' /etc/neutron/rootwrap.conf
|
|
|
|
{% endif %}
|
|
|
|
COPY neutron_sudoers /etc/sudoers.d/neutron_sudoers
|
|
RUN usermod -a -G kolla neutron \
|
|
&& chmod 750 /etc/sudoers.d \
|
|
&& chmod 440 /etc/sudoers.d/neutron_sudoers
|