48 lines
1.8 KiB
Bash
Executable File
48 lines
1.8 KiB
Bash
Executable File
#!/bin/bash
|
|
# Copyright VMware, Inc.
|
|
# SPDX-License-Identifier: APACHE-2.0
|
|
|
|
# shellcheck disable=SC1091
|
|
|
|
set -o errexit
|
|
set -o nounset
|
|
set -o pipefail
|
|
# set -o xtrace # Uncomment this line for debugging purposes
|
|
|
|
# Load libraries
|
|
. /opt/bitnami/scripts/libfs.sh
|
|
. /opt/bitnami/scripts/liblog.sh
|
|
. /opt/bitnami/scripts/libmongodb.sh
|
|
|
|
# Load environment
|
|
. /opt/bitnami/scripts/mongodb-env.sh
|
|
|
|
for dir in "$MONGODB_TMP_DIR" "$MONGODB_LOG_DIR" "$MONGODB_CONF_DIR" "$MONGODB_DEFAULT_CONF_DIR" "$MONGODB_DATA_DIR" "$MONGODB_VOLUME_DIR" "$MONGODB_INITSCRIPTS_DIR"; do
|
|
ensure_dir_exists "$dir"
|
|
done
|
|
chmod -R g+rwX "$MONGODB_TMP_DIR" "$MONGODB_LOG_DIR" "$MONGODB_CONF_DIR" "$MONGODB_DATA_DIR" "$MONGODB_VOLUME_DIR" "$MONGODB_INITSCRIPTS_DIR"
|
|
|
|
render-template "$MONGODB_MONGOD_TEMPLATES_FILE" >"$MONGODB_CONF_FILE"
|
|
|
|
# Create .dbshell file to avoid error message
|
|
touch "$MONGODB_DB_SHELL_FILE" && chmod g+rw "$MONGODB_DB_SHELL_FILE"
|
|
# Create .mongorc.js file to avoid error message
|
|
touch "$MONGODB_RC_FILE" && chmod g+rw "$MONGODB_RC_FILE"
|
|
# Create .mongoshrc.js file to avoid error message
|
|
touch "$MONGOSH_RC_FILE" && chmod g+rw "$MONGOSH_RC_FILE"
|
|
# Create .mongodb folder to avoid error message
|
|
mkdir "$MONGOSH_DIR" && chmod g+rwX "$MONGOSH_DIR"
|
|
|
|
chmod 660 "$MONGODB_CONF_FILE"
|
|
|
|
# Redirect all logging to stdout
|
|
ln -sf /dev/stdout "$MONGODB_LOG_FILE"
|
|
|
|
# Copy all initially generated configuration files to the default directory
|
|
# (this is to avoid breaking when entrypoint is being overridden)
|
|
cp -r "${MONGODB_CONF_DIR}/"* "$MONGODB_DEFAULT_CONF_DIR"
|
|
chmod o+r -R "$MONGODB_DEFAULT_CONF_DIR"
|
|
|
|
chown -R $UID:$GID "$MONGODB_TMP_DIR" "$MONGODB_LOG_DIR" "$MONGODB_CONF_DIR" "$MONGODB_DATA_DIR" "$MONGODB_VOLUME_DIR" "$MONGOSH_DIR"
|
|
chown $UID:$GID "$MONGODB_DB_SHELL_FILE" "$MONGODB_RC_FILE" "$MONGOSH_RC_FILE"
|