• Document Up to Date

Docker/Kuber Instructions for Upgrading CrafterCMS

This section details how to upgrade your CrafterCMS installations in Kubernetes or Docker Compose.

Upgrading Docker Compose

These upgrade instructions are for both authoring and delivery compose projects:

  1. Run docker-compose down to fully stop the environment.

  2. If you are using a clone of https://github.com/craftercms/docker-compose, then just pull the latest changes. If you’re using your own Docker Compose files, then remember to update the versions of the CrafterCMS Docker images.

  3. Check the release notes of the new CrafterCMS version (Release Notes) for upgrades to Elasticsearch. If there has been an upgrade, then also update the Elasticsearch image versions.

  4. Check the configuration file changes between the previous version and the new version. If you have overwritten any of them in a volume, we recommend you do the following:

    1. Compare the original configuration files and the files you have overwritten, so you know what are the changes you have made (for example, if you’re currently in 3.1.4, then run a diff between the original 3.1.4 configuration files and your overwritten versions).

    2. Copy your changes to the new version of the configuration file (for example, if the new version you’re upgrading to is 3.1.5, then copy your configuration overrides to the 3.1.5 version of the file).

    3. Replace the file in the volume with the new configuration file with your changes.

  5. Check the Release Notes for any other additional tasks you need to perform.

  6. Run docker-compose up.

  7. Monitor the Docker logs for any upgrade errors.

Upgrading Kubernetes Deployments

These upgrade instructions are for both Authoring and Delivery deployments:

  1. Update the CrafterCMS image versions in your deployment files.

  2. Check the release notes of the new CrafterCMS version (Release Notes) for upgrades to Elasticsearch. If there has been an upgrade, then also update the Elasticsearch image versions in your deployment files.

  3. Check the configuration file changes between the previous version and the new version. If you have overwritten any of them in a ConfigMap or Secret, we recommend you do the following:

    1. Compare the original configuration files and the files you have overwritten, so you know what are the changes you have made (for example, if you’re currently in 3.1.4, then run a diff between the original 3.1.4 configuration files and your overwritten versions).

    2. Copy your changes to the new version of the configuration file (for example, if the new version you’re upgrading to is 3.1.5, then copy your configuration overrides to the 3.1.5 version of the file).

    3. Replace the file in the ConfigMap or Secret with the new configuration file with your changes.

  4. Check the Release Notes for any other additional tasks you need to perform.

  5. Apply the updated deployment files (kubectl apply) so the containers are restarted and the configuration changes detected.

  6. Monitor the Kubernetes logs for any upgrade errors.