diff options
Diffstat (limited to 'docker')
| -rw-r--r-- | docker/mongodb/Dockerfile.j2 | 14 | ||||
| -rw-r--r-- | docker/mongodb/extend_start.sh | 10 | ||||
| -rw-r--r-- | docker/mongodb/mongodb_sudoers | 1 |
3 files changed, 22 insertions, 3 deletions
diff --git a/docker/mongodb/Dockerfile.j2 b/docker/mongodb/Dockerfile.j2 index 03cbb2a7f..78f8b32b5 100644 --- a/docker/mongodb/Dockerfile.j2 +++ b/docker/mongodb/Dockerfile.j2 @@ -15,9 +15,17 @@ RUN apt-get install -y --no-install-recommends mongodb-server \ {% endif %} -RUN mkdir -p /data/db +RUN mkdir -p /var/lib/mongodb /home/mongodb \ + && chown -R mongodb: /var/lib/mongodb /home/mongodb -# TODO(SamYaple): updated mongodb to match the rest of Kolla -#ENTRYPOINT exec /bin/mongod --dbpath /data/db --logpath /var/log/mongodb/mongo.log --noprealloc --smallfiles +COPY mongodb_sudoers /etc/sudoers.d/mongodb_sudoers +COPY extend_start.sh /usr/local/bin/kolla_extend_start + +RUN usermod -a -G kolla mongodb \ + && chmod 755 /usr/local/bin/kolla_extend_start \ + && chmod 750 /etc/sudoers.d \ + && chmod 440 /etc/sudoers.d/mongodb_sudoers {{ include_footer }} + +USER mongodb diff --git a/docker/mongodb/extend_start.sh b/docker/mongodb/extend_start.sh new file mode 100644 index 000000000..f00369ff0 --- /dev/null +++ b/docker/mongodb/extend_start.sh @@ -0,0 +1,10 @@ +#!/bin/bash + +echo "run extended start" + +# Bootstrap and exit if KOLLA_BOOTSTRAP variable is set. This catches all cases +# of the KOLLA_BOOTSTRAP variable being set, including empty. +if [[ "${!KOLLA_BOOTSTRAP[@]}" ]]; then + sudo chown mongodb: /var/lib/mongodb/ + exit 0 +fi diff --git a/docker/mongodb/mongodb_sudoers b/docker/mongodb/mongodb_sudoers new file mode 100644 index 000000000..8a8f4e3cc --- /dev/null +++ b/docker/mongodb/mongodb_sudoers @@ -0,0 +1 @@ +%kolla ALL=(root) NOPASSWD: /usr/bin/chown mongodb\: /var/lib/mongodb/, /bin/chown mongodb\: /var/lib/mongodb/ |
