Fix mongo downgrade loop
This commit is contained in:
@@ -63,14 +63,21 @@ RUN rm -f /var/lib/apt/lists/lock /var/cache/apt/archives/lock /var/lib/dpkg/loc
|
|||||||
gosu \
|
gosu \
|
||||||
nginx-light \
|
nginx-light \
|
||||||
wget && \
|
wget && \
|
||||||
|
# Add MongoDB 4.4 repository
|
||||||
wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | apt-key add - && \
|
wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | apt-key add - && \
|
||||||
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-4.4.list && \
|
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-4.4.list && \
|
||||||
|
# Add MongoDB 5.0 repository
|
||||||
|
wget -qO - https://www.mongodb.org/static/pgp/server-5.0.asc | apt-key add - && \
|
||||||
|
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/5.0 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-5.0.list && \
|
||||||
|
# Add NodeJS repository
|
||||||
wget -qO- https://deb.nodesource.com/setup_${NODE_VERSION} | bash - && \
|
wget -qO- https://deb.nodesource.com/setup_${NODE_VERSION} | bash - && \
|
||||||
apt-get update && \
|
apt-get update && \
|
||||||
|
# Install MongoDB 4.4 and 5.0 packages
|
||||||
apt-get install -y --no-install-recommends \
|
apt-get install -y --no-install-recommends \
|
||||||
nodejs \
|
nodejs \
|
||||||
mongodb-org-server=${MONGO_VERSION} \
|
mongodb-org-server=${MONGO_VERSION} \
|
||||||
mongodb-org-shell=${MONGO_VERSION} && \
|
mongodb-org-shell=${MONGO_VERSION} \
|
||||||
|
mongodb-org-server=5.0.21 && \
|
||||||
apt-get clean && \
|
apt-get clean && \
|
||||||
rm -rf /var/lib/apt/lists/* /var/cache/apt/* /tmp/* && \
|
rm -rf /var/lib/apt/lists/* /var/cache/apt/* /tmp/* && \
|
||||||
mkdir -p /data/db /var/log/mongodb /var/run/mongodb && \
|
mkdir -p /data/db /var/log/mongodb /var/run/mongodb && \
|
||||||
|
|||||||
@@ -18,7 +18,7 @@ check_mongo_version() {
|
|||||||
|
|
||||||
# First, start MongoDB 5.0 to set compatibility version
|
# First, start MongoDB 5.0 to set compatibility version
|
||||||
echo "Starting MongoDB 5.0 to set compatibility version..."
|
echo "Starting MongoDB 5.0 to set compatibility version..."
|
||||||
MONGODB_VERSION=5.0 gosu mongodb mongod --dbpath $MONGODB_DATA_DIR --port 27017 --bind_ip 127.0.0.1 &
|
gosu mongodb /usr/bin/mongod --dbpath $MONGODB_DATA_DIR --port 27017 --bind_ip 127.0.0.1 --config /etc/mongod.conf &
|
||||||
MONGO_PID=$!
|
MONGO_PID=$!
|
||||||
|
|
||||||
# Wait for MongoDB 5.0 to start
|
# Wait for MongoDB 5.0 to start
|
||||||
@@ -52,9 +52,9 @@ check_mongo_version() {
|
|||||||
sleep 1
|
sleep 1
|
||||||
done
|
done
|
||||||
|
|
||||||
# Run repair
|
# Run repair with MongoDB 4.4
|
||||||
echo "Running repair..."
|
echo "Running repair with MongoDB 4.4..."
|
||||||
gosu mongodb mongod --dbpath $MONGODB_DATA_DIR --repair
|
gosu mongodb /usr/bin/mongod --dbpath $MONGODB_DATA_DIR --repair
|
||||||
|
|
||||||
return 0
|
return 0
|
||||||
fi
|
fi
|
||||||
@@ -82,9 +82,9 @@ if [ $MIGRATION_ATTEMPT -gt $MAX_MIGRATION_ATTEMPTS ]; then
|
|||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Start MongoDB normally
|
# Start MongoDB 4.4 normally
|
||||||
echo "Starting MongoDB..."
|
echo "Starting MongoDB 4.4..."
|
||||||
gosu mongodb mongod --dbpath $MONGODB_DATA_DIR --logpath $MONGODB_LOG_DIR/mongodb.log --bind_ip 0.0.0.0 &
|
gosu mongodb /usr/bin/mongod --dbpath $MONGODB_DATA_DIR --logpath $MONGODB_LOG_DIR/mongodb.log --bind_ip 0.0.0.0 &
|
||||||
MONGO_PID=$!
|
MONGO_PID=$!
|
||||||
|
|
||||||
# Wait for MongoDB to be ready
|
# Wait for MongoDB to be ready
|
||||||
|
|||||||
Reference in New Issue
Block a user