Deploying Spotfire server 14.5 and its components on docker container with CDK 3.0.0 and using Docker run CLI

Deploying Spotfire server 14.5 and its components on docker container with CDK 3.0.0 and using Docker run CLI

book

Article ID: KB0138090

calendar_today

Updated On:

Products Versions
Spotfire 14.5

Description

The deployment of the Spotfire server and its components on a Docker container using Docker run CLI involves below steps

  1. Install Prerequisites on Linux VM
  2. Build Spotfire Images
  3. Deploy Spotfire Server (TSS)
  4. Deploy Worker Services (Web Player and Automation Services)

Environment

CDK 3.0.0 and above

Resolution

Phase 1: Install Prerequisites on Linux VM

Execute these commands to prepare your Ubuntu system for Docker and the CDK build process.

sudo apt update && sudo apt upgrade -y
sudo apt install git make -y
sudo apt install ca-certificates curl gnupg lsb-release -y

# Install Docker Repository Key
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

# Add Docker Repository
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update

# Install Docker Engine
sudo apt install docker-ce docker-ce-cli containerd.io -y
sudo systemctl enable docker
sudo systemctl start docker

# Grant current user Docker access (MUST log out and log back in for this to take effect)
sudo usermod -aG docker $USER


Phase 2: Build Spotfire Images
This process clones the CDK and builds the images, which implicitly includes the Worker services.

git clone --branch v3.0.0 https://github.com/spotfiresoftware/spotfire-cloud-deployment-kit.git

Navigate to spotfire-cloud-deployment-kit/containers/downloads and upload all required installation files.

spotfireserver-14.5.0.x86_64.tar.gz
spotfirenodemanager-14.5.0.x86_64.tar.gz
SPOT_sfire-app_14.5.0_enterprise-languagepacks.zip
Spotfire.Dxp.sdn
Spotfire.Dxp.netcore-linux.sdn
Spotfire.Dxp.PythonServiceLinux.sdn
Spotfire.Dxp.TerrServiceLinux.sdn
Spotfire.Dxp.RServiceLinux.sdn

To build the Images :

Run cd spotfire-cloud-deployment-kit/containers and run the command Make, which will build all required Images for Spotfire deployment

Phase 3: Deploy Spotfire Server (TSS)

This command bootstraps the server and starts the main application. Before deploying the below command, you need to create a Database using the script located under the Spotfire installation folder. In example below we are using SQL DB

docker run -d --name spotfire-server -p 8080:8080 \
  -e ACCEPT_EUA=Y \
  -e SPOTFIREDB_CLASS=com.microsoft.sqlserver.jdbc.SQLServerDriver \
  -e SPOTFIREDB_URL='jdbc:sqlserver://<DB_HOST>\SQLEXPRESS:<DB_PORT>;databaseName=<DB_NAME>;trustServerCertificate=true' \
  -e SPOTFIREDB_USERNAME=<DB_USER> \
  -e SPOTFIREDB_PASSWORD=<DB_PASS> \
  -e TOOL_PASSWORD=<TOOL_PASS> \
  spotfire/spotfire-server:14.5.0-v3.0.0

# Check if the server is running (STATUS should be 'Up')
docker ps

# Check server logs for bootstrap success
docker logs spotfire-server -f

You can access the Spotfire URL as http://serverFQDN:8080


Phase 4: Deploy Worker Service (Web Player and Automation Services)

This command deploys the Webplayer container, which registers as a Node Manager and attempts to run the Webplayer services.

docker run -d --rm -e ACCEPT_EUA=Y   -e SERVER_BACKEND_ADDRESS=<Server name or IP>   spotfire/spotfire-webplayer:14.5.0-v3.0.0

After the worker container is running, proceed to the Spotfire Administration UI (Nodes & Services) to trust the Node, which will install the web player service


The command below deploys the
Automation Services container, which registers as a Node Manager and attempts to run the Automation Services.

docker run -d --rm -e ACCEPT_EUA=Y \

  -e SERVER_BACKEND_ADDRESS=172.17.0.2 \

  spotfire/spotfire-automationservices:14.5.0-v3.0.0

After the worker container is running, proceed to the Spotfire Administration UI (Nodes & Services) to trust the Node, which will install the Automation Services

Issue/Introduction

This guide outlines the streamlined process for installing Docker on Linux VM, preparing the Spotfire container images using the Cloud Deployment Kit (CDK), and executing the necessary Docker run commands for a containerized Spotfire Server and Node Services. For installation, Ubuntu 24.04.03 is used; however, it will work on other Linux Distributions as well.

Additional Information

Github Doc: Spotfire Server container

Github Doc: Spotfire Webplayer container

Github Doc: Spotfire AutomationServices Container