From 974dbf4a5f951f4bc627dc59761dab19585edcc4 Mon Sep 17 00:00:00 2001 From: Joe Ferguson Date: Mon, 24 Sep 2018 17:15:09 -0700 Subject: [PATCH] Only chown things in the entrypoint that are not already owned by mongodb --- 3.2/docker-entrypoint.sh | 2 +- 3.4/docker-entrypoint.sh | 2 +- 3.6/docker-entrypoint.sh | 2 +- 4.0/docker-entrypoint.sh | 2 +- 4.1/docker-entrypoint.sh | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/3.2/docker-entrypoint.sh b/3.2/docker-entrypoint.sh index 81e3803146..66a379c6f2 100755 --- a/3.2/docker-entrypoint.sh +++ b/3.2/docker-entrypoint.sh @@ -11,7 +11,7 @@ originalArgOne="$1" # all mongo* commands should be dropped to the correct user if [[ "$originalArgOne" == mongo* ]] && [ "$(id -u)" = '0' ]; then if [ "$originalArgOne" = 'mongod' ]; then - chown -R mongodb /data/configdb /data/db + find /data/configdb /data/db \! -user mongodb -exec chown mongodb '{}' + fi # make sure we can write to stdout and stderr as "mongodb" diff --git a/3.4/docker-entrypoint.sh b/3.4/docker-entrypoint.sh index 81e3803146..66a379c6f2 100755 --- a/3.4/docker-entrypoint.sh +++ b/3.4/docker-entrypoint.sh @@ -11,7 +11,7 @@ originalArgOne="$1" # all mongo* commands should be dropped to the correct user if [[ "$originalArgOne" == mongo* ]] && [ "$(id -u)" = '0' ]; then if [ "$originalArgOne" = 'mongod' ]; then - chown -R mongodb /data/configdb /data/db + find /data/configdb /data/db \! -user mongodb -exec chown mongodb '{}' + fi # make sure we can write to stdout and stderr as "mongodb" diff --git a/3.6/docker-entrypoint.sh b/3.6/docker-entrypoint.sh index 09c49240ef..229d3271c8 100755 --- a/3.6/docker-entrypoint.sh +++ b/3.6/docker-entrypoint.sh @@ -11,7 +11,7 @@ originalArgOne="$1" # all mongo* commands should be dropped to the correct user if [[ "$originalArgOne" == mongo* ]] && [ "$(id -u)" = '0' ]; then if [ "$originalArgOne" = 'mongod' ]; then - chown -R mongodb /data/configdb /data/db + find /data/configdb /data/db \! -user mongodb -exec chown mongodb '{}' + fi # make sure we can write to stdout and stderr as "mongodb" diff --git a/4.0/docker-entrypoint.sh b/4.0/docker-entrypoint.sh index 09c49240ef..229d3271c8 100755 --- a/4.0/docker-entrypoint.sh +++ b/4.0/docker-entrypoint.sh @@ -11,7 +11,7 @@ originalArgOne="$1" # all mongo* commands should be dropped to the correct user if [[ "$originalArgOne" == mongo* ]] && [ "$(id -u)" = '0' ]; then if [ "$originalArgOne" = 'mongod' ]; then - chown -R mongodb /data/configdb /data/db + find /data/configdb /data/db \! -user mongodb -exec chown mongodb '{}' + fi # make sure we can write to stdout and stderr as "mongodb" diff --git a/4.1/docker-entrypoint.sh b/4.1/docker-entrypoint.sh index 09c49240ef..229d3271c8 100755 --- a/4.1/docker-entrypoint.sh +++ b/4.1/docker-entrypoint.sh @@ -11,7 +11,7 @@ originalArgOne="$1" # all mongo* commands should be dropped to the correct user if [[ "$originalArgOne" == mongo* ]] && [ "$(id -u)" = '0' ]; then if [ "$originalArgOne" = 'mongod' ]; then - chown -R mongodb /data/configdb /data/db + find /data/configdb /data/db \! -user mongodb -exec chown mongodb '{}' + fi # make sure we can write to stdout and stderr as "mongodb"