I'm trying to create my own deployment on a Kubernetes cluster based on a CMS (Prestashop). And I imagine that I will have to update the image regularly.
The CMS comes with 2 ways of update :
- via there module (1 click upgrade) : this method is not suitable for automation and will break the parallel running images
- via upgrade script on the install folder.
the question is how i can achieve a rollig update strategy that can pull the image ready to serve the client and update the schema and the underlying scripts that should alter the database just ONCE, so that new running pods don't break the database
i already created the docker ready to serve image, the issue now is with the updating strategy and the impact on the database.
NB: the database is running on a separate namespace and in a separate statefulSet