ibm-itx-ls image and container
The image and the container created from this image are named ibm-itx-ls, where ls stands for Launcher Server. The provided ibm-itx-ls Docker image is used to spin up containers in Docker, podman or Kubernetes environments.
To design and compile ITX maps and systems to be run by this container, ITX Design Studio and ITX Integration Flow Designer on-premises tools must be used. The compiled maps then must be saved to the volume, or a host directory, bound to the /data/maps location in the container file system, and the compiled systems must be saved to the volume, or a host directory, bound to the /data/systems location in the container file system.
- Red Hat Universal Base Image 9 (ubi9 base) operating system as the base image
- ITX runtime for running Launcher systems and maps
- IBM MQ Client
The image specifies the following directories created in the container file system when the container is started:
Contains a compiled system to run when the ibm-itx-ls container is started. The system must have a .msl file extension. To ensure that all instances of the container have access to the same system when those instances are running on different hosts, this location must be accessible on all hosts, for example it can be an NFS share.
Contains compiled maps referenced by the system in /data/systems directory. The maps must have an extension that matches the extension referenced in the system file. This extension will be either .lnx or .mmc, depending on whether multi-platform composite maps are generated from ITX Design Studio. If a map references a file relative to the map directory, that file must reside in the directory relative to this directory. Likewise, if a map creates a file without specifying a directory, that file will be created in the map directory. If a map runs other maps, those maps must reside in the same directory, and must be saved under the exact names, including file extension, under which they are referenced in the main map. To ensure that all instances of the container have access to the same maps when those instances are running on different hosts, this location must be accessible on all hosts, as would be the case when using an NFS share.
Contains temporary execution files.
Contains log files produced by the ITX runtime.
Contains any additional shared libraries and JAR files to make them available to the running container, such as for example JDBC driver JARs for use with JDBC adapter. You can also list JAR files and directories in the config.yaml configuration file. The usage example in “ibm-itx-ls Usage example” shows how to use that mechanism to list JAR files and make them available in JEXIT map functions in the maps referenced by your systems.
Directory used by the bundled IBM MQ Client.
Directory used for holding configuration files like resource configuration file, config.yaml initialization file required for launcher startup and systems processing, key store file for HTTP Listener and HTTP/S adapter TLS authentication purposes.
The above locations must be mounted to volumes, or host machine directories, when creating a container. Alternatively, a single volume or a local host directory that contains systems, maps, tmp, and extra sub-directories can be mounted to the /data location in the container and a single volume or host directory for logs that can be mounted to the /logs location in the container.
Refer to the following table for the environment variables or values.yaml chart settings that can be used to control the startup of the container instance:
| Setting | Description |
|---|---|
| ITX_LS_RESOURCE_REGISTRY_CONFIG_FILE | Resource registry configuration file, default is null (no
file is used) The Helm chart values.yaml setting equivalent is launcher.resourceRegistry. |
| ITX_LS_ADMIN_USER | Launcher’s admin user, default is admin (applicable under
cluster) The Helm chart values.yaml setting equivalent is launcher.admin.username. |
| ITX_LS_ADMIN_PSWD | Launcher’s admin password, default is admin (applicable under
cluster). The Helm chart values.yaml setting equivalent is launcher.admin.secretFile. |
| ITX_LS_HTTPLSNR_ENABLED | Enable Launcher HTTP Listener, default is true. The Helm chart values.yaml setting equivalent is httpListener.enabled. |
| ITX_LS_HTTPLSNR_AUDIT | Enable Launcher HTTP Listener audit, default is false. The Helm chart values.yaml setting equivalent is httpListener.audit. |
| ITX_LS_HTTPLSNR_LOG_LEVEL | Log level for Launcher HTTP Listener: none, standard,
verbose. The Helm chart values.yaml setting equivalent is httpListener.logLevel. |
| ITX_LS_HTTPLSNR_SSL_ENABLED | Enable secure interaction between client, listener and
launcher. The Helm chart values.yaml setting equivalent is httpListener.ssl.enabled. |
| ITX_LS_HTTPLSNR_SSL_HTTP_CERTIFICATE | Name of the certificate in key store for client, listener
interaction. The Helm chart values.yaml setting equivalent is httpListener.ssl.certificate.http. |
| ITX_LS_HTTPLSNR_SSL_LAUNCHER_CERTIFICATE | Name of the certificate in key store for listener, launcher
interaction. The Helm chart values.yaml setting equivalent is httpListener.ssl.certificate.launcher. |