Docker

The Docker image file HighByte-Intelligence-Hub-X.X.X Docker (Build XXXX.X.X.X).tar includes the Intelligence Hub runtime and configuration components, and is built from the alpine linux image with OpenJDK 11. This section covers how to install and run the docker image.

NOTE: This is an x86_64 image. Other CPU architectures such as arm64 require building your own image from the installer.

Install

  1. Run the following docker command to load the docker image:

    bash
    docker load -i "HighByte-Intelligence-Hub-X.X.X Docker (Build XXXX.X.X.X).tar"
  2. Setup a volume to host the application configuration. This step is optional, but recommended so that you do not lose your configuration when performing future image updates.

    bash
    docker volume create hb_vol
  3. Run the image. In this example command port 45245 is the runtime's REST API used for configuration and, 1885 is used by the internal MQTT broker and port 8885 is the default port for the REST data server.. Note: Remove the –mount source=hb_vol if not using a volume.

    bash
    docker run -p 45245:45245 -p 1885:1885 -p 8885:8885 --name highbyte --mount source=hb_vol,target=/usr/local/highbyte/config highbyte:X.X.X

Changes to the MQTT and REST Data server ports require the container to be recreated. Changing the ports from the user interface will not change the container ports and may interrupt connections.

Upgrade

To upgrade the docker image, install the new docker image, stop the old container, and run the new container. The new container will migrate any and all configuration in the volume to the new version.

Migration from 2.3 or older images

This section includes the steps for moving a 2.3 or older volume to the newest image. In version 2.4, new security measures were introduced so that the Intelligence Hub no longer runs as the root (superuser) within the container. Due to this change, volumes created and used prior to 2.4 will need to follow the steps below to be compatible with 2.4.

If you do not need your project file or any of the existing Intelligence Hub settings, simply recreate the volume hb_vol with the following command. Otherwise, please proceed to upgrade instructions.

bash
docker volume rm hb_vol

Upgrade Instructions from 2.3 or Older

  1. Start the 2.3 (or older) container. See instructions above for starting the docker container with a volume.

  2. Open a terminal in the container. Use the command below to open a terminal in the container.

    bash
    docker exec -it highbyte /bin/sh
  3. Create a new user called highbyte in the image using the following command.

    bash
    adduser -D highbyte -u 1000
  4. Change the ownership of the configuration files to the new highbyte user.

    bash
    chown -R highbyte:highbyte /usr/local/highbyte/config/*
  5. Stop the old container and start the new container (see instructions in main section for the command).