|
@@ -5,8 +5,21 @@
|
|
# Supports MongoDB versions 3-8 with automatic binary selection
|
|
# Supports MongoDB versions 3-8 with automatic binary selection
|
|
|
|
|
|
# get wekan/mongo settings
|
|
# get wekan/mongo settings
|
|
|
|
+echo "Reading snap settings..."
|
|
source $SNAP/bin/wekan-read-settings
|
|
source $SNAP/bin/wekan-read-settings
|
|
|
|
|
|
|
|
+# Debug: Show what we got from snap settings
|
|
|
|
+echo "Snap settings loaded:"
|
|
|
|
+echo " MONGODB_BIND_IP: '${MONGODB_BIND_IP}'"
|
|
|
|
+echo " MONGODB_PORT: '${MONGODB_PORT}'"
|
|
|
|
+echo " MONGODB_BIND_UNIX_SOCKET: '${MONGODB_BIND_UNIX_SOCKET}'"
|
|
|
|
+
|
|
|
|
+# Debug: Check snap settings directly
|
|
|
|
+echo "Direct snap settings check:"
|
|
|
|
+echo " mongodb-port: $(snapctl get mongodb-port 2>/dev/null || echo 'not set')"
|
|
|
|
+echo " mongodb-bind-ip: $(snapctl get mongodb-bind-ip 2>/dev/null || echo 'not set')"
|
|
|
|
+echo " mongodb-bind-unix-socket: $(snapctl get mongodb-bind-unix-socket 2>/dev/null || echo 'not set')"
|
|
|
|
+
|
|
if [ "true" == "${DISABLE_MONGODB}" ]; then
|
|
if [ "true" == "${DISABLE_MONGODB}" ]; then
|
|
echo "mongodb is disabled. Stop service"
|
|
echo "mongodb is disabled. Stop service"
|
|
snapctl stop --disable ${SNAP_NAME}.mongodb
|
|
snapctl stop --disable ${SNAP_NAME}.mongodb
|
|
@@ -218,6 +231,29 @@ fi
|
|
# Set MongoDB log file path
|
|
# Set MongoDB log file path
|
|
export MONGO_LOG_FILE="${SNAP_COMMON}/mongodb.log"
|
|
export MONGO_LOG_FILE="${SNAP_COMMON}/mongodb.log"
|
|
|
|
|
|
|
|
+# Build bind options from snap settings
|
|
|
|
+BIND_OPTIONS=""
|
|
|
|
+if [ "nill" != "${MONGODB_BIND_UNIX_SOCKET}" ] && [ -n "${MONGODB_BIND_UNIX_SOCKET}" ]; then
|
|
|
|
+ BIND_OPTIONS+=" --unixSocketPrefix ${MONGODB_BIND_UNIX_SOCKET}"
|
|
|
|
+fi
|
|
|
|
+if [ -n "${MONGODB_BIND_IP}" ]; then
|
|
|
|
+ BIND_OPTIONS+=" --bind_ip ${MONGODB_BIND_IP}"
|
|
|
|
+else
|
|
|
|
+ BIND_OPTIONS+=" --bind_ip 127.0.0.1"
|
|
|
|
+fi
|
|
|
|
+if [ -n "${MONGODB_PORT}" ]; then
|
|
|
|
+ BIND_OPTIONS+=" --port ${MONGODB_PORT}"
|
|
|
|
+else
|
|
|
|
+ BIND_OPTIONS+=" --port 27019"
|
|
|
|
+fi
|
|
|
|
+
|
|
|
|
+# Debug: Show what settings we're using
|
|
|
|
+echo "MongoDB settings:"
|
|
|
|
+echo " MONGODB_BIND_IP: ${MONGODB_BIND_IP:-127.0.0.1}"
|
|
|
|
+echo " MONGODB_PORT: ${MONGODB_PORT:-27017}"
|
|
|
|
+echo " MONGODB_BIND_UNIX_SOCKET: ${MONGODB_BIND_UNIX_SOCKET:-not set}"
|
|
|
|
+echo " BIND_OPTIONS: ${BIND_OPTIONS}"
|
|
|
|
+
|
|
# Start MongoDB with appropriate version
|
|
# Start MongoDB with appropriate version
|
|
echo "Starting MongoDB with detected version..."
|
|
echo "Starting MongoDB with detected version..."
|
|
log_version_detection "Starting MongoDB server"
|
|
log_version_detection "Starting MongoDB server"
|
|
@@ -232,9 +268,7 @@ case "$ACTIVE_VERSION" in
|
|
exec /snap/${SNAP_NAME}/current/migratemongo/bin/mongod \
|
|
exec /snap/${SNAP_NAME}/current/migratemongo/bin/mongod \
|
|
--dbpath="$MONGO_DATA_DIR" \
|
|
--dbpath="$MONGO_DATA_DIR" \
|
|
--logpath="$MONGO_LOG_FILE" \
|
|
--logpath="$MONGO_LOG_FILE" \
|
|
- --logappend \
|
|
|
|
- --bind_ip=127.0.0.1 \
|
|
|
|
- --port=27017
|
|
|
|
|
|
+ --logappend $BIND_OPTIONS
|
|
;;
|
|
;;
|
|
"4")
|
|
"4")
|
|
echo "Starting MongoDB 4.x server..."
|
|
echo "Starting MongoDB 4.x server..."
|
|
@@ -242,9 +276,7 @@ case "$ACTIVE_VERSION" in
|
|
exec /snap/${SNAP_NAME}/current/mongodb4/bin/mongod \
|
|
exec /snap/${SNAP_NAME}/current/mongodb4/bin/mongod \
|
|
--dbpath="$MONGO_DATA_DIR" \
|
|
--dbpath="$MONGO_DATA_DIR" \
|
|
--logpath="$MONGO_LOG_FILE" \
|
|
--logpath="$MONGO_LOG_FILE" \
|
|
- --logappend \
|
|
|
|
- --bind_ip=127.0.0.1 \
|
|
|
|
- --port=27017
|
|
|
|
|
|
+ --logappend $BIND_OPTIONS
|
|
;;
|
|
;;
|
|
"5")
|
|
"5")
|
|
echo "Starting MongoDB 5.x server..."
|
|
echo "Starting MongoDB 5.x server..."
|
|
@@ -252,9 +284,7 @@ case "$ACTIVE_VERSION" in
|
|
exec /snap/${SNAP_NAME}/current/mongodb5/bin/mongod \
|
|
exec /snap/${SNAP_NAME}/current/mongodb5/bin/mongod \
|
|
--dbpath="$MONGO_DATA_DIR" \
|
|
--dbpath="$MONGO_DATA_DIR" \
|
|
--logpath="$MONGO_LOG_FILE" \
|
|
--logpath="$MONGO_LOG_FILE" \
|
|
- --logappend \
|
|
|
|
- --bind_ip=127.0.0.1 \
|
|
|
|
- --port=27017
|
|
|
|
|
|
+ --logappend $BIND_OPTIONS
|
|
;;
|
|
;;
|
|
"6")
|
|
"6")
|
|
echo "Starting MongoDB 6.x server..."
|
|
echo "Starting MongoDB 6.x server..."
|
|
@@ -262,9 +292,7 @@ case "$ACTIVE_VERSION" in
|
|
exec /snap/${SNAP_NAME}/current/mongodb6/bin/mongod \
|
|
exec /snap/${SNAP_NAME}/current/mongodb6/bin/mongod \
|
|
--dbpath="$MONGO_DATA_DIR" \
|
|
--dbpath="$MONGO_DATA_DIR" \
|
|
--logpath="$MONGO_LOG_FILE" \
|
|
--logpath="$MONGO_LOG_FILE" \
|
|
- --logappend \
|
|
|
|
- --bind_ip=127.0.0.1 \
|
|
|
|
- --port=27017
|
|
|
|
|
|
+ --logappend $BIND_OPTIONS
|
|
;;
|
|
;;
|
|
"7"|*)
|
|
"7"|*)
|
|
echo "Starting MongoDB 7.x server..."
|
|
echo "Starting MongoDB 7.x server..."
|
|
@@ -272,9 +300,7 @@ case "$ACTIVE_VERSION" in
|
|
exec /snap/${SNAP_NAME}/current/bin/mongod \
|
|
exec /snap/${SNAP_NAME}/current/bin/mongod \
|
|
--dbpath="$MONGO_DATA_DIR" \
|
|
--dbpath="$MONGO_DATA_DIR" \
|
|
--logpath="$MONGO_LOG_FILE" \
|
|
--logpath="$MONGO_LOG_FILE" \
|
|
- --logappend \
|
|
|
|
- --bind_ip=127.0.0.1 \
|
|
|
|
- --port=27017
|
|
|
|
|
|
+ --logappend $BIND_OPTIONS
|
|
;;
|
|
;;
|
|
"8")
|
|
"8")
|
|
echo "Starting MongoDB 8.x server..."
|
|
echo "Starting MongoDB 8.x server..."
|
|
@@ -282,8 +308,6 @@ case "$ACTIVE_VERSION" in
|
|
exec /snap/${SNAP_NAME}/current/mongodb8/bin/mongod \
|
|
exec /snap/${SNAP_NAME}/current/mongodb8/bin/mongod \
|
|
--dbpath="$MONGO_DATA_DIR" \
|
|
--dbpath="$MONGO_DATA_DIR" \
|
|
--logpath="$MONGO_LOG_FILE" \
|
|
--logpath="$MONGO_LOG_FILE" \
|
|
- --logappend \
|
|
|
|
- --bind_ip=127.0.0.1 \
|
|
|
|
- --port=27017
|
|
|
|
|
|
+ --logappend $BIND_OPTIONS
|
|
;;
|
|
;;
|
|
esac
|
|
esac
|