Piwigo Upgrade Procedure

What would be the correct procedure for executing a piwigo version upgrade?

I did the 14.0 upgrade within the application interface when prompted by Piwigo earlier in Jan 2024. Everything seemed fine for a few weeks but then I noticed the new search functionality wasn’t working correctly. I did a docker-compose pull and then noticed all my pictures (20k) were missing all their tags (photos-tags) table was purged. Most likely that could have been my use of symlinks of gallery/galleries with my nfs storage use case and some sync process flushed that relationship data but oddly the images themselves remained. Just no tags. Looking to avoid this from happening again.

So I’m a little gun shy at the moment with upgrades on this software. Today I did a docker-compose pull for the v14.2 upgrade, which piwigo UI is saying the service is running the newer version and there is no upgrade prompt anymore. So does a image pull and docker start go through the mysql schema updates or any other piwigo upgrade steps?

I’m speculating that the UI upgrade process will execute the upgrade and any other scripts for updating the schema based on my v14.0 upgrade but not update the code base. Then with the v14.2 upgrade I just did without the UI, that may have upgraded the code base but not the schema. I don’t think there was any schema updates on the latest version.

TLDR; If a version has schema updates, do we need to re-run the upgrade process by hand after a docker pull to make sure the complete upgrade (source + data schema) fully.

Piwigo Manual Update: https:// Manual Update | Piwigo

/upgrade.php is telling me this.

No upgrade required, the database structure is up to date

piwigo_installed_version in wigio_config is stating 14.2.0 so that may answer my question. :thinking:

“we do not recommend or support updating apps inside the container.”

Okay I get it but I think there could be better documentation around this or explanation on how the containers pull the latest versions from the provider.

What has me confused is how linuxserver handles the schema update for major releases like v14.0

as noted in the container readme, for this container, pulling the new image and recreating the container will update it. If a db schema change is required, the application will generally handle this itself.