kolla/docker/elasticsearch/Dockerfile.j2
Alex Schultz ae1322ec10 Use base_package_type
This change updates the docker files to use base_package_type instead
of doing specific distro checks for the rhel/deb generic cases. The
base_distro is still available and is used when a specific distro needs
a customization but if the differences are purely rpm vs deb, then the
base_package_type can be used.

Change-Id: I8d720bb185df65a0178061ccf20b1ab2265da2c5
2019-01-17 08:23:41 -07:00

52 lines
1.5 KiB
Django/Jinja

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_package_type == 'rpm' %}
{% set elasticsearch_packages = [
'elasticsearch',
'java-1.8.0-openjdk-headless',
] %}
ENV JAVA_HOME /usr/lib/jvm/jre-1.8.0-openjdk/
{% elif base_package_type == 'deb' %}
{% 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