Deploy API Control Plane

Deploy and access API Control Plane by using Docker and Helm.

Sample Docker and Helm deployment scripts are available at the GitHub repository. The Docker images are available at IBM’s Container Registry.

Prerequisites

Perform the following steps to deploy API Control Plane by using Docker and Helm:

  • Clone apicontrolplane GitHub repository by using any Git client.
    1. Open apicontrolplane GitHub repository.
    2. Click code and copy the web URL under the HTTPS tab.
    3. Open Git Bash from your preferred location in your local and run the following command:
      Git clone <copied_web_url>
      apicontrolplane repository is cloned in to your local.
  • Make sure that you installed Docker Compose version 2.19.0 or later.
    • Make sure that the Docker host provides at least 4 GB of main memory.
    • To accommodate the space for OpenSearch, set the kernel setting to 262144 by running the following command on your Docker host.
      sysctl -w vm.max_map_count=262144
    • If you are a developer who is intended to run API Control Plane with Rancher Desktop, make sure to use Rancher Desktop version 1.9 or later.
  • Perform the following steps to download the Certified Container images from IBM Entitled Registry:
    1. Make sure that you have the entitlement key.
    2. Log in to https://myibm.ibm.com/dashboard/ with your IBMid and password that are associated with the entitled software.
    3. On the Container Software & Entitlement Keys section, click View library.
    4. On the Entitlement keys section, click Add new key.
    5. Save the entitlement key to a safe location for later use.
    6. Open Command Prompt.
    7. Use the following command to log in to container registry:

      For docker, use the command

      docker login cp.icr.io -u cp -p <entitlement_key>
      or

      For podman, use the command

      podman login cp.icr.io -u cp -p <entitlement_key>
    8. Use the following command to pull the desired container image:
      docker pull cp.icr.io/cp/<image-name>:<tag>
      or
      podman pull cp.icr.io/cp/<image-name>:<tag>
      where, the <major.minor> tag pulls the latest fix version within the specific release (for example, 11.1 pulls 11.1.n, where n is the most recent fix). The <major.minor.fix> tag pulls the specific fix version.

      Make sure that all the five micro-services (such as ingress, UI, engine, asset catalog, and opensearch) images are pulled to your local.

      The sample command to pull 11.1.5 images is as follows,
      docker pull cp.icr.io/cp/ibm-webmethods-api-control-plane-ingress:11.1.5
      docker pull cp.icr.io/cp/ibm-webmethods-api-control-plane-ui:11.1.5
      docker pull cp.icr.io/cp/ibm-webmethods-api-control-plane-engine:11.1.5
      docker pull cp.icr.io/cp/ibm-webmethods-api-control-plane-assetcatalog:11.1.5
      docker pull opensearchproject/opensearch:2.19.1