Sideloader Images

Sideloader images create initContainers within the pod that unpack their contents from a list of specified directories into a /sync directory. This /sync directory is shared by the initContainer and the main application container. At start-up, the application container copies the file system from /sync to /opt/mtx. Any existing files with the same name are overwritten.

Sideloader Image Properties describes the properties related to sideloader images.

Table 1. Sideloader Image Properties
Property Description
application.configuration.sideloaders[x].name The name of the sideloader image. Make sure this image exists in the image repository specified with images.registry.name. The value of images.registry.name is appended to this value when the image is retrieved from the registry.
application.configuration.sideloaders[x].version The version (or tag) of the sideloader image. The default value is latest.
application.configuration.sideloaders[x].directoriesToUnpack A comma-separated list of directories to unpack from the sideloader image into the /sync directory of the container. The default value is /opt/mtx.

Files in a configuration source overwrite files of the same name downloaded from a Remote URL. When multiple configuration sources are defined, they are applied in the order they appear in the Helm values file. A file of the same name that exists in two or more configuration sources is replaced by the version in the last configuration source applied.

The following example shows configuration for a telco1-custom-sideloader image:

chf:
  configuration:
    sideloaders:
      - name: telco1-custom-sideloader
        version: "1.0"

Creating a Sideloader Image

Base images on the provided matrixx-sideloader image. Do not change the entry point of this image. Place configuration files in the directories they are intended to occupy in the main application container.

The following is an example of a dockerfile for a sideloader image:

FROM docker-registry.telco1.com/matrixx-sideloader:5220
COPY --chown=mtx:mtx config/* /opt/mtx/conf/