FROM {{ namespace }}/{{ image_prefix }}base:{{ tag }} LABEL maintainer="{{ maintainer }}" name="{{ image_name }}" build-date="{{ build_date }}" {% block elasticsearch_header %}{% endblock %} {% import "macros.j2" as macros with context %} {{ macros.configure_user(name='elasticsearch', shell='/bin/bash', homedir='/usr/share/elasticsearch') }} {% if base_distro in ['centos', 'oraclelinux', 'rhel'] %} {% set elasticsearch_packages = [ 'elasticsearch', 'java-1.8.0-openjdk-headless', ] %} ENV JAVA_HOME /usr/lib/jvm/jre-1.8.0-openjdk/ {% elif base_distro in ['debian', 'ubuntu'] %} {% set elasticsearch_packages = [ 'default-jre-headless', 'elasticsearch', ] %} {% if base_arch == 'x86_64' %} ENV java_arch=amd64 {% elif base_arch == 'aarch64' %} ENV java_arch=arm64 {% else %} ENV java_arch={{ base_arch }} {% endif %} ENV JAVA_HOME /usr/lib/jvm/java-8-openjdk-${java_arch}/ {% endif %} ENV ES_SKIP_SET_KERNEL_PARAMETERS true {{ macros.install_packages(elasticsearch_packages | customizable("packages")) }} COPY extend_start.sh /usr/local/bin/kolla_extend_start # NOTE: By default the shell of the elasticsearch user is /bin/false. We have to # change the shell to /bin/bash to be able to run elasticsearch as a non-root user. # # https://discuss.elastic.co/t/running-as-non-root-user-service-wrapper-has-changed/7863 RUN chmod 755 /usr/local/bin/kolla_extend_start {% block elasticsearch_footer %}{% endblock %} {% block footer %}{% endblock %} USER elasticsearch