aboutsummaryrefslogtreecommitdiff
path: root/docker/elasticsearch/Dockerfile.j2
blob: 7b24f330e3fc20f4287d763fb863aefc94276057 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
FROM {{ namespace }}/{{ image_prefix }}base:{{ tag }}
MAINTAINER {{ maintainer }}

{% block elasticsearch_header %}{% endblock %}

{% import "macros.j2" as macros with context %}

{% if base_distro in ['centos', '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

# 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 \
    && chmod 750 /etc/sudoers.d \
    && chmod 440 /etc/sudoers.d/kolla_elasticsearch_sudoers \
    && usermod -a -G kolla elasticsearch \
    && usermod -s /bin/bash elasticsearch -d /usr/share/elasticsearch

{% block elasticsearch_footer %}{% endblock %}
{% block footer %}{% endblock %}
{{ include_footer }}

USER elasticsearch