Creating external images

Build the external images outside Maximo® Application Suite and Maximo Manage.

Procedure

  1. Create a Dockerfile for the maxadmin image.
    The following example shows a configmap for admin image.
    
    #Installing industry solution. Remove the section or add corresponding rows for additional industry solutions.
    # Section End
    FROM docker-na-public.artifactory.swg-devops.com/wiotp-docker-local/manage/manageadmin@sha256:663a049e0213a651a3507007c6f209868ac2e6fd959e43cbf7448f17473c9ae4 AS ADMIN
    WORKDIR /opt/IBM/SMP/maximo
    
    # Copy file for industry solutions, remove the section or add corresponding rows for additional industry solutions.
    # Section End
    RUN mkdir -p /opt/IBM/SMP/maximo/additional-server-files
    
    # tmp_build_files is a mounted volume. The OOB dockerfile relies on the content of this volume for truststore and credential of retrieving customization archive if it exists, 
    and the additional-server-files come to this folder as well. Do the necessary additional content process using a similar mount volume, or use the directory in relation to
    the dockerfile for copying files such as customization package or additional server files.
    
    COPY --chown=maximoinstall:0 tmp_build_files .
    
    
    #RUN rm -rf customizationCredentials && rm trust.p12 && rm truststorePassword
    WORKDIR /opt/IBM/SMP/maximo
    # Remove translation files that will not be used.
    RUN rm -f translation_files.zip lang/MaximoLangPkgXliff_Ar.zip lang/MaximoLangPkgXliff_Cs.zip lang/MaximoLangPkgXliff_Da.zip lang/MaximoLangPkgXliff_De.zip
    Note: Do not omit any required components in the resulting image. The image must conform to what Maximo Manage expects.

    Follow the instructions to incorporate your own customization or change the location of the content. Do not alter the structure.

    Create your own build process to build and store all the required images.

    Note:
    • If you use all as the server bundle type, create a Dockerfile from all_dockerfile data in the template. Similarly, for admin build, the Dockerfile must be based on the admin_dockerfile from the template.
    • Anything that is referenced in the Dockerfile template configmap must have the corresponding images that are built externally.
    • You do not build or provide the image for the standaloneJMS bundle type. The image for the JMS server is fixed by default.
  2. Create a Dockerfile for each bundle type, except for standaloneJMS, for each of the bundle types based on the corresponding Dockerfile provided in the generated configmap.
    The following example shows a configmap for all image.
    
    # Update the below FROM command to include the image of manage admin.
    FROM image-registry.openshift-image-registry.svc:5000/mas-<INSTANCE_ID>-manage/<INSTANCE_ID>-<WORKSPACE_ID>-admin@sha256:<image ID of the manage admin image>
    AS ADMIN
    
    FROM docker-na-public.artifactory.swg-devops.com/wiotp-docker-local/manage/ubi-wlp-manage@sha256:7b7c5f75cb67733df11c40bea092de0c68366583cbcd8b3ff93be14ec837c6c AS LIBERTY
    #ARG VERBOSE=true
    USER root
    RUN mkdir -p /dmroot/maximo/migration/outbound RUN mkdir -p /dmroot/maximo/migration/preview RUN mkdir -p /dmroot/maximo/migration/inbound
    RUN chmod -R 777 /dmroot/maximo/migration/outbound chmod -R 777 /dmroot/maximo/migration/preview chmod -R 777 /dmroot/maximo/migration/inbound
    RUN mkdir -p /airoot
    RUN chmod -R 777 /airoot
    COPY --chown=1001:0 maximo-all-server/ /config
    RUN rm /opt/ibm/wlp/usr/servers/defaultServer/server.env && mkdir /managefiles/additional-server-files
    COPY --chown=1001:0 additional-server-files/ /managefiles/additional-server-files/
    ENV MXE_MASDEPLOYED=1
    ENV MZE_USESQLSERVERSEQUENCE=1
    ENV LC_ALl=en_US.UTF-8
    USER 1001
    # This is overridden by container cmd when deployed in OpenShift
    # CMD /opt/ibm/wlp/bin/server run defaultServer