Introduction

CAST provides a single Docker image for Microsoft Windows and Linux (available in Docker hub) that includes the CAST AIP Components listed below. It has been implemented to facilitate CAST AIP deployment. The image is deployed via the CAST AIP Docker Installer (an interactive batch script) in a unique container created by the installer and you can therefore install multiple CAST AIP containers in the Docker environment - for example to install multiple AIP Nodes on the same server within Docker.


Docker for Microsoft WindowsDocker for Linux

AIP Console (front end) - including embedded CAST Dashboards

AIP Node (back end)

AIP Console (front end) - including embedded CAST Dashboards

AIP Core (currently only for Management/Engineering - Dashboard)-

CAST Extend Proxy-

Installation is flexible and you can install all these components or different combinations of them within the container created by the installer:

Docker for Microsoft Windows

Docker for Linux

Which releases of CAST AIP components are provided in the image?

The Docker image provided by CAST will contain the most recent "funcrel" releases of each component where possible. Images are updated as soon as new releases of components are shipped. You can inspect the content of the images via Docker hub (Docker ID account required). The "latest" tag contains the most recent release:

Release Notes

See CAST AIP Docker Installer - Release Notes.

Deployment requirements

SoftwareSupportedNotes
Host Operating System(tick)

Microsoft Windows

See the Docker Desktop for Windows system requirements: https://docs.docker.com/docker-for-windows/install/#system-requirements

  • To run Docker in a virtual machine, the Operating System must be running Windows Server 2019 with the latest updates applied.
  • Installations of Windows Server using only Server Core (i.e. without a GUI) are not supported.


Linux

  • Ubuntu Server (16.04 LTS / 18.04 LTS / 20.04 LTS)
  • CentOS (7 or 8)

See also: https://docs.docker.com/engine/install/#server

Docker

(tick)

Microsoft Windows

Docker Desktop for Windows - latest version recommended, or one that provides:

Linux

  • Docker Engine ≥ 18.0
  • docker-compose ≥ 3.0
  • curl (optional) - to download the extension containing the start script from CAST Extend.
  • netstat (optional) - the installer uses this tool to check if the requested port for the installed components is free. This tool is not present by default in all Linux distributions. If the tool is not present, a message is displayed during the installation and you should ensure that your chosen port is indeed unused since the installer will not have been able to check this. This is especially true when installing additional containers by re-running the script - if you choose the same port numbers, the container will not be able to start.

RAM(tick)

16GB RAM (minimum) for the host server. Note that by default, a container has no resource constraints and can use as much of a given resource as the host’s kernel scheduler allows. Please consult https://docs.docker.com/config/containers/resource_constraints/ for more information.

Storage(tick)25GB (minimum) free storage: SSD with SATA interface recommended. An installation of all components is currently approximately 14GB - however, if your data resides within the Docker container, then you will need additional storage.
CAST Storage Service / PostgreSQL instance(tick)

The Docker image does not contain a CAST Storage Service/PostgreSQL instance for the analysis data, therefore if you are installing the AIP Node/AIP Core image (Docker for Windows only) you must install an instance on the current server (if the server is powerful enough) or on a dedicated server (recommended). The server on which Docker Desktop is installed and more specifically the container in which AIP Core/AIP Node is deployed, must be able to connect to this CAST Storage Service/PostgreSQL instance. Make sure that the configuration file pg_hba.conf in your CAST Storage Service/PostgreSQL instance is correctly configured to meet this requirement.

Access to Docker Hub(tick)The Docker image is hosted on https://hub.docker.com/, therefore the server on which you are performing the installation must have internet access to this URL.

Installation

See:

Technical information and tips

RAM allocated to the container

The installer will automatically allocate 4GB RAM to the container when the container is started. 4GB is the absolute minimum RAM memory required to run all components. CAST recommends increasing this value. To change the value, you can modify the "4g" entry in the following lines in the installer files:

Microsoft Windows - start_docker_caip.bat:
set OPTIONS=-m 4g -t --restart always --name %CAIPCONTAINERNAME% -d

Linux - start_docker_caip.sh:
ARGS_DOCKER="-m 4g -t --restart always -d --name $CONTAINERNAME -v $DOC_CONF_DIR:/workspace -p $HOSTPORTCONSOLE:8081"

Existing container detected during the installation

If the installer detects an existing container created by CAST in the Docker environment, the installer will prompt whether to remove these existing containers. The default action is to remove all existing containers:

If you choose to retain the existing containers, the installer will choose a new unique container name for the new installation (or you can choose a custom name):

Accessing files within the Docker container

It may be necessary to modify configuration files that reside in the Docker container for certain advanced configuration scenarios. If this is required, you can access the files using the following command from a command or Powershell window, where <container_name> is the name of the container created by the installer in Docker - the default is castcaip_1:

Microsoft Windows:
docker exec -it <container_name> cmd

Linux:
docker exec -it <container_name> /bin/bash