Installing and Running Dockerized Actions Pro
Introduction
Dockerized Actions Pro version 7.9.0.0 images can be obtained by contacting support. Docker Compose configures and manages the components (services) required to run Actions Pro in a preconfigured image. This document provides instructions for installing and running Actions Pro on a single node.
Node Specifications
To run Actions Pro on a single node, the minimum requirements are:
RAM: 8 GB
Disk Space: 20 GB (Note that disk space can quickly fill up with logs and data from Elasticsearch and MariaDB. Allocate sufficient space accordingly.)
Swap Space: 6 GB
High volume environments will require more than the minimum requirements.
Prerequisites
- Make sure that Docker and Docker Compose are installed on the node.
Docker Compose Setup
Download and Extract the docker-compose.zip File:
- Extract the contents. The zip file contains the
docker-compose.ymlfile at the root level and a folder structure containing the necessary certificates and configuration files for the application.
Folder Descriptions
certs Folder:
ca.crt: SSL Certificate Authorityinstance.key: SSL Keyinstance.crt: SSL Certificatekeystore.jks: Java KeyStore for Tomcat.keystore.PKCS12: PKCS12 format of the same keystore askeystore.jks, used for Kibana.
config Folder:
kibana.yml: Configuration file for Kibana.
dashboards Folder:
- Contains default Kibana dashboards in NDJSON (Newline Delimited JSON) format.
license Folder:
- Contains a valid Actions Pro license.
If no license is provided, the RSRemote and RSControl components will shut down immediately, while the container remains running. Upon logging in, the UI will redirect to the License page, indicating that a license is required. After placing the license file in the designated folder, execute the following commands in the specified order:
docker compose down rsview rscontrol rsremote # Stop and remove containers
docker compose up rsview rscontrol rsremote -d # Start new containers
mariadb Folder:
- Contains MariaDB configuration files and SQL scripts for database initialization.
Folder names and their hierarchy can be customized if these changes are reflected in the docker-compose.yml file under the volumes attribute for the corresponding services.
Kibana dashboards are accessed from a browser. For this to work, set the hostname of the kibana service to the domain name of the VM where Docker is installed. Along with this, the domain name should also reflect in:
- All the curl command URLs of setup_kibana service.
- The
actionspro.envfile under the propertieskibana_yml_server_hostandkibana_yml_server.publiczBaseUrl
For example, if the domain name is vm.domain.com, then:
kibana_yml_server_host=vm.domain.com
kibana_yml_server.publiczBaseUrl=https://vm.domain.com:5601
Configuration
Actions Pro is configured using the properties defined in the blueprint.properties file.
These blueprint properties can be used in the environment attribute of the docker-compose.yml file for the corresponding component. Any properties shared by multiple components can be removed from environment section and copied in the provided actionspro.env file.
In the bash shell, dot (.) is not a valid character for environment variable names. If any of the required properties in blueprint.properties contains a dot (.), replace it with an underscore (_) .
For example, to set rscontrol.log4j.Loggers.Root.level=DEBUG at the rscontrols root log level within a container, add rscontrol_log4j_Loggers_Root_level=DEBUG under the environments attribute section of the rscontrol service in the docker-compose.yml file.
Update the hostname attribute of the docker-compose.yml file to the Common name (CN) of the CA signed certificate. This will avoid a browser warning when Pro is accessed for the first time. To do this:
- Add the CA-signed certificates to the existing
keystore.jkslocated in thecertsfolder. - Update the
hostnameattributes in thedocker-compose.ymlfile and adjust all corresponding references.
After making these changes, restart the Docker containers to apply the hostname update. If the components are already running, you will need to bring them down and restart them, so the hostname change takes effect.
Running the Application
To start Actions Pro, execute the following command:
docker compose -f ./docker-compose.yml up -d
Progress will be displayed in the terminal. The component start time will vary based on the number of vCPUs and RAM.
To view the startup logs for any component, use the command:
docker logs <component-name>
Once the application is running, logs will be generated and stored in the logs/pro/<component>/ directory.
You can access the application by navigating to:
https://<NODE_IP_ADDR>:8443/resolve