Building your own Docker image

Build your own Docker image by using your own processing methods.

About this task

If you choose not to build an image by using the JCL that is supplied with IBM® App Connect Enterprise on z/OS, or to use the ot4i image, you can build your own image. The image must be made available to the zCX instance, and it must be built for the s390x architecture. The following options are available:
  • You can build a custom version of the ot4i image by following the instructions in the section entitled "Building a container image" in /ot4i/ace-docker.
  • You can use your own image that is built without using the supplied JCL or by customizing the ot4i image. You might need to specify your own parameters to use on the docker run command that is issued when you submit the JCL jobs BIPXIS or BIPXCLIS.

Procedure

To build your own image without using the supplied JCL or by customizing the ot4i image, complete the following steps:

  1. Build the image by using your own processing methods, and make the image available to the zCX instance.
    For example, place it in any Docker registry to which your zCX instance is connected. For more information, see Docker registries in the IBM z/OS® documentation online, and Loading a Docker image from a .tar file on the z/OS UNIX System Services file system.
  2. Ensure that when you docker exec onto the container, you docker exec into an IBM App Connect Enterprise command environment. For more information, see Setting up a command environment.
  3. Optional: If you want to administer your integration server Docker container by using JCL, complete the following steps:
    1. Set the environment variables in the environment file, STDENV. You must set the zCX access environment variables and all of the following environment variables:
      • SERVER_NAME. The zCX processing assumes that the Docker container is called SERVER_NAME and it sets SERVER_NAME as the container name when it starts the container.
      • SERVER_RUN_OVERRIDE. Specify the parameters, including port mappings to use when you submit the JCL job BIPXIS, which issues the docker run command.
      • ACE_IMAGE. You must set this environment variable for the framework to work.
      • ACE_TAG. You must set this environment variable for the framework to work.
    2. Submit the JCL job BIPXIS.
      The JCL job BIPXIS starts the integration server docker container by running the following command:
      docker run --name $SERVER_NAME $SERVER_RUN_OVERRIDE $ACE_IMAGE:$ACE_TAG
  4. Optional: If you want to administer your integration server Docker container by using IBM z/OS console commands, you must set your integration server to write console log messages in ibmjson format. One way that you can set the format is to complete the following steps:
    1. Set consoleLog to true, and set outputFormat to ibmjson in the server.conf.yaml configuration file:
      Log:
                    consoleLog: true             # Control writing BIP messages to standard out. Set to true or false, default is true.
                    outputFormat: 'ibmjson'      # Control the format of BIP messages written to standard out and file.
    2. Set the environment variables in the environment file, BIPENVS. You must set the zCX access environment variables and all of the following environment variables:
      • SERVER_NAME. The zCX processing assumes that the Docker container is called SERVER_NAME and it sets SERVER_NAME as the container name when it starts the container.
      • SERVER_RUN_OVERRIDE. Specify the parameters, including port mappings to use when you submit the JCL job BIPXCLIS, which issues the docker run command.
      • ACE_IMAGE. You must set this environment variable for the framework to work.
      • ACE_TAG. You must set this environment variable for the framework to work.
    3. Start the console listener task.
    The console listener task starts the integration server Docker container by running the following command:
    docker run --name $SERVER_NAME $SERVER_RUN_OVERRIDE $ACE_IMAGE:$ACE_TAG

Results

Your own image is built.

What to do next

You can then use either JCL or z/OS console commands to manage your integration servers and to run IBM App Connect Enterprise commands (with the naming convention mqsi*), as described in the following topics: