configure mongodb as a s6 service

This commit is contained in:
Sameer Naik
2015-09-30 22:47:17 +05:30
parent 1f1f3b7aab
commit b989d94d93
7 changed files with 39 additions and 38 deletions

View File

@@ -17,4 +17,3 @@ COPY rootfs/ /
EXPOSE 27017
VOLUME ["$BITNAMI_APP_VOL_PREFIX/data", "$BITNAMI_APP_VOL_PREFIX/conf", "$BITNAMI_APP_VOL_PREFIX/logs"]
ENTRYPOINT ["/entrypoint.sh"]
CMD ["mongod"]

View File

@@ -1,42 +1,11 @@
#!/bin/bash
set -e
source $BITNAMI_PREFIX/bitnami-utils.sh
print_welcome_page
# We allow the user to pass extra options
if [ "${1:0:1}" = '-' ]; then
EXTRA_OPTIONS="$@"
set -- mongod
export EXTRA_OPTIONS="$@"
set --
elif [ "${1}" == "mongod" -o "${1}" == "$(which mongod)" ]; then
export EXTRA_OPTIONS="${@:2}"
set --
fi
if [ ! "$(ls -A $BITNAMI_APP_VOL_PREFIX/conf)" ]; then
generate_conf_files
fi
# The user can run its own version or mongod and we still
# will want to log it and run it using the BITNAMI_APP_USER
if [[ "$1" = 'mongod' ]]; then
if [ ! -f $BITNAMI_APP_VOL_PREFIX/data/storage.bson ]; then
create_mongodb_user
print_app_credentials $BITNAMI_APP_NAME `print_mongo_user` `print_mongo_password` `print_mongo_database`
else
print_container_already_initialized $BITNAMI_APP_NAME
fi
rm -rf $BITNAMI_APP_VOL_PREFIX/data/mongod.lock
chown -R $BITNAMI_APP_USER:$BITNAMI_APP_USER $BITNAMI_APP_VOL_PREFIX/data/ \
$BITNAMI_APP_VOL_PREFIX/logs/ \
$BITNAMI_APP_VOL_PREFIX/conf/ || true
wait_and_tail_logs &
# Add default configuration
if [[ "$@" = 'mongod' ]]; then
exec gosu $BITNAMI_APP_USER "$@" $PROGRAM_OPTIONS ${MONGODB_PASSWORD:+--auth} $EXTRA_OPTIONS
else
exec gosu $BITNAMI_APP_USER "$@"
fi
else
exec "$@"
fi
exec /init "$@"

View File

@@ -0,0 +1,20 @@
#!/usr/bin/with-contenv bash
set -e
source $BITNAMI_PREFIX/bitnami-utils.sh
print_welcome_page
if [ ! "$(ls -A $BITNAMI_APP_VOL_PREFIX/conf)" ]; then
generate_conf_files
fi
if [ ! -f $BITNAMI_APP_VOL_PREFIX/data/storage.bson ]; then
create_mongodb_user
print_app_credentials $BITNAMI_APP_NAME `print_mongo_user` `print_mongo_password` `print_mongo_database`
else
print_container_already_initialized $BITNAMI_APP_NAME
fi
chown -R $BITNAMI_APP_USER:$BITNAMI_APP_USER $BITNAMI_APP_VOL_PREFIX/data/ \
$BITNAMI_APP_VOL_PREFIX/logs/ \
$BITNAMI_APP_VOL_PREFIX/conf/ || true

View File

@@ -0,0 +1 @@
/bin/true

View File

@@ -0,0 +1,5 @@
#!/usr/bin/with-contenv bash
set -e
source $BITNAMI_PREFIX/bitnami-utils.sh
exec s6-setuidgid $BITNAMI_APP_USER tail -f -n 1000 $BITNAMI_APP_VOL_PREFIX/logs/*.log 2>/dev/null

View File

@@ -0,0 +1 @@
/bin/true

View File

@@ -0,0 +1,6 @@
#!/usr/bin/with-contenv bash
set -e
source $BITNAMI_PREFIX/bitnami-utils.sh
rm -rf $BITNAMI_APP_VOL_PREFIX/data/mongod.lock
exec s6-setuidgid $BITNAMI_APP_USER mongod $PROGRAM_OPTIONS ${MONGODB_PASSWORD:+--auth} ${EXTRA_OPTIONS:+"$EXTRA_OPTIONS"}