Updating CellStore with Docker
Estimated reading time: 2 minutesThis page will guide you through the process of updating an already setup and working CellStore installation to a later version.
CellStore is usually distributed as a compressed archive or through Reportix’ private Docker registry.
Loading CellStore image
The first step of the installation is loading CellStore image to your docker host.
If installing from a compressed archive:
gunzip -c cellstore-vNEXT.gz | docker load
If installing from Reportix’ private Docker registry please request access to the Reportix Support. Once you have done so run:
docker login registry.reportix.com -u username
docker pull registry.reportix.com/cellstore/cellstore:vNEXT
Updating CellStore container
To update CellStore container, we need to stop and remove the current container and then recreate a new container from the newly loaded image. You will need to specify again the %CELLSTORE_HOME% and %CELLSTORE_PORT% which should be the same that are used in the currently installed version. If you do not remember them, you can use these commands to find them out.
This command will display the location of the %CELLSTORE_HOME%:
docker inspect --format '{{ range .Mounts }}{{ .Source }}{{ end }}' cellstore
For instance it will produce:
/var/reportix/cellstore
This command will display the location %CELLSTORE_PORT%:
docker port cellstore
For instance it will produce:
8080/tcp -> 0.0.0.0:8080
The port number at the very end of the output is the %CELLSTORE_PORT%.
The following command stops and removes the current container. This operation will not remove any data.
docker rm -f cellstore
Then we can start the new CellStore container using:
docker run -d -v %CELLSTORE_HOME%:/root/cellstore --name cellstore \
-p %CELLSTORE_PORT%:8080 registry.reportix.com/cellstore/cellstore:vX.X.X server
For instance, using /var/reportix/cellstore as %CELLSTORE_HOME% and 8080 as %CELLSTORE_PORT%:
docker run -d -v /var/reportix/cellstore:/root/cellstore --name cellstore \
-p 8080:8080 registry.reportix.com/cellstore/cellstore:vX.X.X server
In case you are unable to connect to CellStore you can check the logs using the command described in the Managing CellStore section.
Database Migration on Infoset Upgrades
In rare cases it is necessary to migrate the actual data in the database for a newer version of the CellStore to function effectively. This will mainly happen in case of major optimizations where sometimes:
- this optimization will only become effective if a migration is applied
- this migration is mandatory for the newer version of the CellStore to work
Usually the necessity of a migration is announced in the CellStore Release Notes.
If a migration is necessary:
- create a backup or create a snapshot of the current database to make sure to be able to rollback in case of a failure.
- execute the migration tool (the migration tool will modify actual data in the database):
docker run -d -v /var/reportix/cellstore:/root/cellstore registry.reportix.com/cellstore/cellstore:vNEXT migrate-to-latest
After the migration has finished you should be able to start the cellstore again and run as normal.
cellstore, install, update, documentation, docker