In-place component update for Linux via Docker


Overview

This guide provides instructions for running an in-place update to a new release of CAST Imaging, i.e. using com.castsoftware.imaging.all.dockerexternal link installed on Linux via Docker:

  • on one single machine
  • or via a distributed deployment (multiple machines)

This process will update the following installed components and retain all existing data (applications, results, etc.):

  • imaging-services
  • imaging-viewer
  • analysis-node
  • dashboards

Supported update paths

Source Target Supported? Notes
3.2.2-funcrel / 3.2.3-funcrel 3.3.0-funcrel -
3.2.2-funcrel 3.2.3-funcrel Supported using a specific manual update process - contact CAST Support for information if you need to do this.
3.1.0-funcrel 3.2.2-funcrel / 3.2.3-funcrel Not supported - a fresh installation of the target release is required.
3.0.0-funcrel 3.1.0-funcrel Not supported - a fresh installation of the target release is required.

Requirements

  • Local administrator privileges (user in the sudoers list)
  • All existing containers should be left running during the update (the update script will stop and restart them automatically)
  • Sufficient local disk space for the new images
  • A previous CAST Imaging installation should exist on the target machines
  • In a distributed deployment scenario all components MUST be updated to the same new release (i.e. you cannot update just the analysis-node component or just the imaging-services component)
  • It is not possible to change the TCP port number of any service, nor any HOSTNAME_xxx type installation variable as part of the update process.

Update process

The instructions below are to update from 3.2.x-funcrel to ≥ 3.3.x-funcrel. Note that in a distributed deployment (multi machines), you will need to perform actions on the relevant machine where a CAST Imaging component is installed.

Step 1 - Download and extract the installer

curl -# -O -J "https://extend.castsoftware.com/api/package/download/com.castsoftware.imaging.all.docker/<version>?platform=linux_x64" -H "x-nuget-apikey: <api-key>" -H "accept: application/octet-stream"
  • Extract the ZIP file to any location on your local disk. For distributed deployments, repeat this download and extraction on each machine that requires updating

Step 2 - Configure the installation directory

  • Locate the configuration.conf file in the root of the extracted files
  • Open it with a text editor (e.g., vi or nano)
  • Verify that the INSTALL_DIR variable points to your existing CAST installation:
###################################################################################################
# Folder Contains CAST folders including shared, installation & castms folders 
###################################################################################################

INSTALL_DIR=/opt/cast

Step 3 - Make files executable

Make the update script executable on each machine where you’ll run it:

chmod +x cast-imaging-update.sh

On the machine where the imaging-viewer component is installed (either via the all or imaging-viewer commands), make the imagingsetup file executable:

chmod +x cast-imaging-viewer/imagingsetup

Step 4 - Run the update

Navigate to the root of the extracted files and run the appropriate command based on your deployment type:

For single machine deployment

./cast-imaging-update.sh all

For distributed deployment

Run the appropriate command on each respective machine:

./cast-imaging-update.sh imaging-services
./cast-imaging-update.sh imaging-viewer
./cast-imaging-update.sh analysis-node
./cast-imaging-update.sh dashboards

Step 5 - Verify update success

  • Check container status, all containers should show “Up” status.
docker ps
  • Verify services in the CAST Imaging admin panel:
    • Navigate to the Services settings page
    • Confirm all services show green status indicators:

Next steps

If you need to update applications to a new release of CAST Imaging Core (if provided), see In-place core and application update.