FROM {{ namespace }}/{{ image_prefix }}base:{{ tag }} MAINTAINER {{ maintainer }} {% import "macros.j2" as macros with context %} {% if base_distro in ['centos', 'fedora', 'oraclelinux', 'rhel'] %} {% set rabbitmq_packages = [ 'hostname', 'https://github.com/rabbitmq/rabbitmq-server/releases/download/rabbitmq_v3_5_7/rabbitmq-server-3.5.7-1.noarch.rpm' ] %} {{ macros.install_packages(rabbitmq_packages | customizable("packages")) }} {% elif base_distro == 'ubuntu' %} {% set rabbitmq_packages = [ 'rabbitmq-server' ] %} {{ macros.install_packages(rabbitmq_packages | customizable("packages")) }} {% elif base_distro == 'debian' %} {% set rabbitmq_packages = [ 'erlang-nox', 'http://www.rabbitmq.com/releases/rabbitmq-server/v3.5.7/rabbitmq-server_3.5.7-1_all.deb' ] %} {{ macros.install_packages(rabbitmq_packages | customizable("packages")) }} {% endif %} # NOTE(sdake): the /bin/true unblocks the rabbitmq-plugins tool. Not sure how # or why. My suspicion is it sends a signal to the parent # process. RUN rm -rf /var/lib/rabbitmq/* \ && curl -o /usr/lib/rabbitmq/lib/rabbitmq_server-3.5.7/plugins/rabbitmq_clusterer-3.5.x-189b3a81.ez http://www.rabbitmq.com/community-plugins/v3.5.x/rabbitmq_clusterer-3.5.x-189b3a81.ez \ && /usr/lib/rabbitmq/bin/rabbitmq-plugins enable --offline \ rabbitmq_management \ rabbitmq_clusterer \ && /bin/true COPY extend_start.sh /usr/local/bin/kolla_extend_start COPY rabbitmq_sudoers /etc/sudoers.d/kolla_rabbitmq_sudoers COPY rabbitmq_get_gospel_node.py /usr/local/bin/rabbitmq_get_gospel_node RUN chmod 755 /usr/local/bin/kolla_extend_start /usr/local/bin/rabbitmq_get_gospel_node \ && chmod 750 /etc/sudoers.d \ && chmod 440 /etc/sudoers.d/kolla_rabbitmq_sudoers \ && usermod -a -G kolla rabbitmq {% block rabbitmq_footer %}{% endblock %} {{ include_footer }} USER rabbitmq