Deploying in a Dockerized Container

You can deploy QMF for WebSphere® on zCX. zCX offers you deployment on Docker containers with z/OS Quality of Service. This simplifies the installation and operation of QMF for WebSphere deployed on zCX. You do not need to provision for a separate Linux server.

Before you begin

Ensure you have the following before deploying a dockerized container on your zCX system.
  • Docker should be enabled on your zCX system.
  • Download the QMF for WebSphereqmf_websphere_vxxxxx.zip file and unzip it on your system.
  • Copy the QMFWebSpherexxx.war file in the docker folder, where xxx is the version number.

Docker folder has the following structure:
  • DockerConfig.yml
  • dockerEntry.sh
  • Dockerfile_tomcat
  • Samples.zip
  • tomcat-users.xml
  • QMFWebSpherexxx.war
  • Dockerfile_websphere
  • server.xml
  • web.xml
  • virtualhosts.xml
You can deploy QMF for WebSphere in one of the following ways:
  • Silent installation: Silent installation uses the default values mentioned in the DockerConfig.yml file. You can edit the parameters before the installation.
  • Interactive installation: Interactive mode prompts for the user inputs. The DockerConfig.yml file is customizable and you can set values as per your system and requirement.

Customizing the DockerConfig.yml file

The DockerConfig.yml file contains parameters which are customizable and which can be set as per your system and requirement. Silent installation mode uses default values. You can edit the parameters before the installation. In interactive mode, you will be prompted for values.

  1. Set the following parameters in the server.xml file:
    • If you want to enable HTTPS, create a keystore file with name local.keystore and set a user defined password in the keystorePass field, in the server.xml file.
      <Connector SSLEnabled="true" acceptCount="100" clientAuth="false"
      	    disableUploadTimeout="true" enableLookups="false" maxThreads="25"
      		port="8080"  keystoreFile="/usr/local/tomcat/conf/local.keystore" keystorePass="****"
      		protocol="org.apache.coyote.http11.Http11NioProtocol"
      		scheme="https"
      		secure="true" sslProtocol="TLS" />
    • https: Specifies the protocol. When you deploy on Tomcat, by default the deployment runs on HTTP. You can enable it for HTTPS. In silent installation mode, default is HTTP. In user interactive mode, you will be prompted to enable HTTPS.
  2. Set the following parameters in the DockerConfig.yml file:
    1. dockerImage: Specifies the base docker image to be picked for QMF for WebSphere installation. By default, s390x/tomcat is specified.
    2. port: Specifies the port for running the QMF for WebSphere application. Default port is set to 9443 for IBM WebSphere Application Server Liberty and 9080 for Apache Tomcat. If you are on IBM WebSphere, you must not change the port.

      ibmWebsphereport: Specifies the port for running IBM WebSphere. Default is set to 9043. If you are on IBM WebSphere, you must not edit this parameter. If you are using IBM WebSphere, this option will not be displayed in the interactive mode.

      Note: If you are on IBM WebSphere, you must not edit this parameter. If you are using IBM WebSphere, this option will not be displayed in the interactive mode.
    3. appdata: Specifies the volume name of the application data which can be mapped to the host system where the docker container would be running. Default is appDataVolume.
    4. minHeap: Specifies Tomcat specific minimum heap size. Default is 512. You can set it as per your requirement.
    5. maxHeap: Specifies Tomcat specific maximum heap size. Default is 2048. You can set it as per your requirement.

Deploying QMF for WebSphere using Docker

To deploy QMF for WebSphere using docker, perform the following steps:

  1. Install Docker.
    • Redhat:

      sudo yum install docker

      sudo service docker start

    • Ubuntu:

      apt-get install docker

      sudo systemctl start docker

  2. Run dockerEntry.sh script.
    • For user interactive installation, run bash dockerEntry.sh
    • For silent installation, run bash dockerEntry.sh -s
    • For help, run bash dockerEntry.sh -h
    Note:
    If you get the error, "/bin/bash^M: bad interpreter: No such file or directory", run the following command:
    sed -i -e 's/^M//' dockerEntry.sh
    If you get the error, "$'\r': command not found", run the following command:
    sed -i -e 's/\r$//' dockerEntry.sh

Launch QMF for WebSphere. For more information, see Launching QMF for WebSphere