diff --git a/1.3/docker-entrypoint.sh b/1.3/docker-entrypoint.sh index a8fca33..a510568 100755 --- a/1.3/docker-entrypoint.sh +++ b/1.3/docker-entrypoint.sh @@ -7,11 +7,14 @@ if [ "${1:0:1}" = '-' ]; then set -- elasticsearch "$@" fi -# Drop root privileges if we are running elasticsearch -if [ "$1" = 'elasticsearch' ]; then +RUN_AS=${RUN_AS:-elasticsearch:elasticsearch} +RUN_AS_USER=${RUN_AS/:*/} + +# Drop root privileges if we are running elasticsearch and RUN_AS is not root +if [ "$1" = 'elasticsearch' -a "$RUN_AS_USER" != '0' -a "$RUN_AS_USER" != 'root' ]; then # Change the ownership of /usr/share/elasticsearch/data to elasticsearch - chown -R elasticsearch:elasticsearch /usr/share/elasticsearch/data - exec gosu elasticsearch "$@" + chown -R $RUN_AS /usr/share/elasticsearch/data + exec gosu $RUN_AS_USER "$@" fi # As argument is not related to elasticsearch, diff --git a/1.4/docker-entrypoint.sh b/1.4/docker-entrypoint.sh index a8fca33..a510568 100755 --- a/1.4/docker-entrypoint.sh +++ b/1.4/docker-entrypoint.sh @@ -7,11 +7,14 @@ if [ "${1:0:1}" = '-' ]; then set -- elasticsearch "$@" fi -# Drop root privileges if we are running elasticsearch -if [ "$1" = 'elasticsearch' ]; then +RUN_AS=${RUN_AS:-elasticsearch:elasticsearch} +RUN_AS_USER=${RUN_AS/:*/} + +# Drop root privileges if we are running elasticsearch and RUN_AS is not root +if [ "$1" = 'elasticsearch' -a "$RUN_AS_USER" != '0' -a "$RUN_AS_USER" != 'root' ]; then # Change the ownership of /usr/share/elasticsearch/data to elasticsearch - chown -R elasticsearch:elasticsearch /usr/share/elasticsearch/data - exec gosu elasticsearch "$@" + chown -R $RUN_AS /usr/share/elasticsearch/data + exec gosu $RUN_AS_USER "$@" fi # As argument is not related to elasticsearch, diff --git a/1.5/docker-entrypoint.sh b/1.5/docker-entrypoint.sh index a8fca33..a510568 100755 --- a/1.5/docker-entrypoint.sh +++ b/1.5/docker-entrypoint.sh @@ -7,11 +7,14 @@ if [ "${1:0:1}" = '-' ]; then set -- elasticsearch "$@" fi -# Drop root privileges if we are running elasticsearch -if [ "$1" = 'elasticsearch' ]; then +RUN_AS=${RUN_AS:-elasticsearch:elasticsearch} +RUN_AS_USER=${RUN_AS/:*/} + +# Drop root privileges if we are running elasticsearch and RUN_AS is not root +if [ "$1" = 'elasticsearch' -a "$RUN_AS_USER" != '0' -a "$RUN_AS_USER" != 'root' ]; then # Change the ownership of /usr/share/elasticsearch/data to elasticsearch - chown -R elasticsearch:elasticsearch /usr/share/elasticsearch/data - exec gosu elasticsearch "$@" + chown -R $RUN_AS /usr/share/elasticsearch/data + exec gosu $RUN_AS_USER "$@" fi # As argument is not related to elasticsearch, diff --git a/docker-entrypoint.sh b/docker-entrypoint.sh index a8fca33..6d381b9 100755 --- a/docker-entrypoint.sh +++ b/docker-entrypoint.sh @@ -7,11 +7,14 @@ if [ "${1:0:1}" = '-' ]; then set -- elasticsearch "$@" fi -# Drop root privileges if we are running elasticsearch -if [ "$1" = 'elasticsearch' ]; then +RUN_AS=${RUN_AS:-elasticsearch:elasticsearch} +RUN_AS_USER=${RUN_AS/:*/} + +# Drop root privileges if we are running elasticsearch and RUN_AS is not root +if [ "$1" = 'elasticsearch' -a "$RUN_AS_USER" != '0' -a "$RUN_AS_USER" != 'root' ]; then # Change the ownership of /usr/share/elasticsearch/data to elasticsearch - chown -R elasticsearch:elasticsearch /usr/share/elasticsearch/data - exec gosu elasticsearch "$@" + chown -R $RUN_AS /usr/share/elasticsearch/data + exec gosu $RUN_AS "$@" fi # As argument is not related to elasticsearch,