Upgrade from v2.1 to v2.3

This version is no longer supported. An update to the latest available version should be performed.

If you are using a PureLife Cloud prior to v2.1, first follow the steps to upgrade to version v2.1.

Included sensor firmware: v0.37.29

With version 2.3, it is no longer necessary to use MinIO. By reducing the dependencies, we hope to simplify the installation and maintenance process and improve file exchange between PureLife Cloud and connected sensors.

Since the sensor firmware < 0.36 can only handle unencrypted file exchange over HTTP, a URL must be specified in the PureLife Cloud configuration, through which the sensors can reach the PureLife Cloud over HTTP. Even if sensors are only to be used with a newer version (strongly recommended), a suitable URL should be stored, as sensors often start with an older version after a factory reset.

Debian

  1. Follow the general instructions to step 9 (inclusive).
  2. Open the configuration file /home/pureuser/config/config.json with a text editor and under the section [HTTP] set the value LegacyFirmwareURL
  3. to the HTTP URL where the PureLife cloud is unencrypted (http) accessible.
[HTTP]
SiteURL = "https://purelife-cloud.de"
- LegacyFirmwareURL = ""
+ LegacyFirmwareURL = "http://purelife-cloud.de"

4. Uninstall the MinIO service and delete all related data.

sudo systemctl disable minio.service
sudo systemctl stop minio.service
rm /etc/systemd/system/minio.service
systemctl daemon-reload
systemctl reset-failed
sudo deluser --remove-all-files minio
rm /etc/systemd/system/minio.service

5. Continue with the general instructions.

Docker

If you have customized the configuration files of your Docker installation, you can look at GitHub to see how the configuration has changed.

1. Follow the general instructions to step 4 (inclusive).

2. Delete the old containers, images and networks (if they are not used elsewhere!)

docker rm postgres_plc minio_plc mosquitto_plc nginx_plc purelife-cloud
docker rmi iegomez/mosquitto-go-auth:latest-mosquitto_2.0.14 minio/minio:RELEASE.2022-06-20T23-13-45Z postgres:14.3-alpine ghcr.io/puresecgmbh/purelife-cloud:2.1.0 nginx:1.21.6-alpine

3. Delete the MinIO and Nginx volume.

sudo rm -r volumes/minio
sudo rm -r volumes/nginx

4. Open the file .env with a text editor and …

  • … add an entry WE_HTTP_SITEURL which holds the URL where the PureLife is reachable.
  • … add an entry WE_HTTP_LEGACYFIRMWAREURL which holds the URL where the PureLife is accessible without encryption (http).
  • … delete entries no longer needed
+ WE_HTTP_SITEURL="https://${HOST}"
+ WE_HTTP_LEGACYFIRMWAREURL="http://${HOST}"

- # MinIO settings
- MINIO_ROOT_USER=...
- MINIO_ROOT_PASSWORD=...

- WE_S3_STORAGEURL=...
- WE_S3_ACCESSKEYID=...
- WE_S3_SECRETACCESSKEY=...

5. Continue with the general instructions.