Creating the Base Docker Image

The content of the container that will run on OpenShift derives from a Docker image that is first created and then hosted in a Docker registry.

To create an EMS Docker image, use the samples/docker/tibemscreateimage script on a machine equipped for building Docker images.

This script needs to be pointed to the software packages to be installed:
  • EMS installation package
  • Optional EMS hotfixes
  • The Java package (optional)
The script also lets you choose whether to save the image as an archive and creates a user and group set to the required uid and gid values to bypass the lack of a runAsGroup OpenShift feature mentioned in section Control Access to NFS Shared Folders.

The following command creates a Docker image based on the EMS 8.6 Linux installation package, adding a JVM, the 12500 uid and the 9500 gid.

> tibemscreateimage TIB_ems_8.6.0_linux_x86_64.zip \
                 -j <JRE installation package>.tar.gz \
                 -u 12500 \
                 -g 9500

The following examples illustrate how you can experiment with that Docker image:

  • This following command creates a sample EMS server folder hierarchy and configuration in the current directory and starts the corresponding server:
    > docker run -p 7222:7222 -v `pwd`:/shared ems:8.6.0 tibemsd
  • To create a sample Central Administration server folder hierarchy and configuration in the current directory and starts the corresponding server:
    > docker run -p 8080:8080 -v `pwd`:/shared ems:8.6.0 tibemsca
  • You can override the creation and use of the sample configuration with your own setup. The following example starts an EMS server using the <path to shared location>/<your server config file> configuration.
    > docker run -p 7222:7222 -v <path to shared location>:/shared \
      ems:8.6.0 tibemsd -config /shared/<your server config file>
    

You can modify the tibemscreateimage script to suit your environment.