Complete documentation of the Nextcloud upgrade process
This commit is contained in:
@@ -1,16 +1,30 @@
|
||||
Steps to upgrade Nextcloud from one version to another.
|
||||
Steps to upgrade Nextcloud from one major version to the next.
|
||||
|
||||
1. Put the Nextcloud instance into maintenance mode
|
||||
docker exec --user www-data nextcloud-app-1 php occ maintenance:mode --on
|
||||
|
||||
Note that 'docker exec' is used to run commands within the Nextcloud docker container; and '--user www-data' is used to run as the user that owns all of the Nextcloud files.
|
||||
|
||||
2. Back up the Nextcloud container's files to a location outside the container's mounted volume. 'rsync' is recommended:
|
||||
|
||||
rsync -Aavx /mnt/storage/appdata/nextcloud/www/ <backup-target-dir>/
|
||||
|
||||
rsync should be run as root. rsync with these options should preserve file ownership & permissions
|
||||
rsync should be run as root. rsync with these options should preserve file ownership & permissions.
|
||||
|
||||
3. Back up MariaDB database:
|
||||
|
||||
docker exec nextcloud-db-container-name mysqldump --single-transaction -h localhost -u nextcloud_user -pnextcloud_password nextcloud_db_name > nextcloud-sqlbkp_$(date +"%Y%m%d").bak
|
||||
4. Alternatively, if the Nextcloud files and database are stored in a ZFS dataset, take a ZFS snapshot of the relevant dataset(s).
|
||||
|
||||
5. Bring the Nextcloud instance down:
|
||||
sudo docker compose down
|
||||
6. Edit the compose.yaml file and change the tag on the Nextcloud image to the next major version number.
|
||||
7. Pull the next version of the Nextcloud image:
|
||||
sudo docker compose pull
|
||||
8. Bring up the Nextcloud instance:
|
||||
sudo docker compose up -d
|
||||
9. Wait a minute or so and bring up the Nextcloud web client in your browser. Open the Administrative Settings Overview page and check for any issues.
|
||||
10. If the Overview page recommends any occ commands:
|
||||
* Put the instance into maintenance mode : docker exec -u www-data nextcloud-app-1 php occ maintenance:mode --on
|
||||
* Run the occ commands recommended (for example, docker exec -u www-data nextcloud-app-1 php occ db:add-missing-indices)
|
||||
* Take the instance out of maintenance mode: docker exec -u www-data nextcloud-app-1 php occ maintenance:mode --off
|
||||
|
||||
Reference in New Issue
Block a user