Upgrading the Docker Image from Version 22.x or older to Version 23.x
FileCloud versions 23.x require MongoDB version 6. To upgrade to MongoDB version 6, you must upgrade the Docker image to 23.x.
Before upgrade, make a backup or take a snapshot of your server.
To upgrade the Docker image:
To create a dump of the database, enter the following into the command line:
docker exec -i <yourcontainername> /usr/bin/mongodump
Copy the dump folder from the container to the host machine.
Note: Do not delete the dump folder. You are required to use it in step 7 to restore the database.docker cp <yourcontainername>:/dump .
To make sure the dump folder has been copied successfully to the host machine, enter:
ls -l dump
List the volumes:
root@docker:/# docker volume ls DRIVER VOLUME NAME local nsadm_cloud_data local nsadm_mongo_database local nsadm_solr_data local nsadm_var_html
Delete the database volume and the FileCloud server volume where the application code is stored, as shown in the following commands.
Please be careful to delete these volumes only.docker volume rm htmldata dbdata
Pull the latest FileCloud Docker image.
docker pull filecloud/fileclouddocker:23.241
Start the container using the freshly pulled Docker image.
sudo docker run --privileged -d -p 443:443 -p 80:80 -v fcdata:/opt/fileclouddata -v dbdata:/var/lib/mongodb -v solrdata:/opt/solrfcdata/var/solr -v htmldata:/var/www/html --name <yourcontainername> <current_image_name:tag> /lib/systemd/systemd
Copy the dump folder created in step 2 to your container, and restore the database.
docker cp dump <yourcontainername>:/ docker exec -i <yourcontainername> /usr/bin/mongorestore --noIndexRestore --drop
Confirm that the container is running.
root@docker:/home/nsadm# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 31a8167e2731 filecloud/filecloudserver23.1:latest "/lib/systemd/..." 3 minutes ago Up 23 seconds 0.0.0.0:80->80/tcp, :::80->80/tcp, 0.0.0.0:443->443/tcp, :::443->443/tcp filecloud.server
Set the compatibility version for MongoDB to 6.0.
root@docker:/home/nsadm# docker exec -it <yourcontainername> bash -c 'mongosh --eval "db.adminCommand( { setFeatureCompatibilityVersion: \"6.0\" } )"' Current Mongosh Log ID: 64b8b48af3fc5d6bfffc1149 Connecting to: mongodb://127.0.0.1:27017/?directConnection=true&serverSelectionTimeoutMS=2000&appName=mongosh+1.10.1 Using MongoDB: 6.0.8 Using Mongosh: 1.10.1 For mongosh info see: https://docs.mongodb.com/mongodb-shell/ To help improve our products, anonymous usage data is collected and sent to MongoDB periodically (https://www.mongodb.com/legal/privacy-policy). You can opt-out by running the disableTelemetry() command. ------ The server generated these startup warnings when booting 2023-07-20T04:12:49.344+00:00: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine. See http://dochub.mongodb.org/core/prodnotes-filesystem 2023-07-20T04:12:49.774+00:00: Access control is not enabled for the database. Read and write access to data and configuration is unrestricted 2023-07-20T04:12:49.774+00:00: vm.max_map_count is too low ------ { ok: 1 }
- When you log in to FileCloud, if you see the following notification, set Storage Path to /opt/fileclouddata.
- Confirm that everything is working as expected in the FileCloud user portal and admin portal.