kolla-ansible/docker/elasticsearch/Dockerfile.j2
Paul Bourke b41247c656 Add header blocks to all Dockerfiles
Change needed to add header blocks to all Dockerfiles, similar to the
base.

Use case is to easily run something before packages are installed, e.g.
to COPY a local rpm in that can be added to the package list.

Change-Id: I1bbfdf0b762da0a392aa8bf47781315b45377bee
Closes-Bug: 1618969
2016-09-13 16:53:31 +01:00

45 lines
1.3 KiB
Django/Jinja

FROM {{ namespace }}/{{ image_prefix }}base:{{ tag }}
MAINTAINER {{ maintainer }}
{% block elasticsearch_header %}{% endblock %}
{% import "macros.j2" as macros with context %}
{% if base_distro in ['centos', 'fedora', 'oraclelinux', 'rhel'] %}
{% set elasticsearch_packages = [
'java-1.7.0-openjdk',
'elasticsearch'
] %}
ENV JAVA_HOME /usr/lib/jvm/jre-1.7.0-openjdk/
{% elif base_distro in ['ubuntu', 'debian'] %}
{% set elasticsearch_packages = [
'openjdk-8-jre',
'elasticsearch'
] %}
ENV JAVA_HOME /usr/lib/jvm/java-8-openjdk-amd64/
{% endif %}
{{ macros.install_packages(elasticsearch_packages | customizable("packages")) }}
COPY elasticsearch_sudoers /etc/sudoers.d/kolla_elasticsearch_sudoers
COPY extend_start.sh /usr/local/bin/kolla_extend_start
RUN chmod 755 /usr/local/bin/kolla_extend_start \
&& chmod 750 /etc/sudoers.d \
&& chmod 440 /etc/sudoers.d/kolla_elasticsearch_sudoers \
&& usermod -a -G kolla elasticsearch
# by default elasticsearch shell is /bin/false, we need
# /bin/bash to run elasticsearch as non-root
# https://discuss.elastic.co/t/running-as-non-root-user-service-wrapper-has-changed/7863
RUN usermod -s /bin/bash elasticsearch -d /usr/share/elasticsearch
{% block elasticsearch_footer %}{% endblock %}
{% block footer %}{% endblock %}
{{ include_footer }}
USER elasticsearch