Run a COBOL program on Kubernetes


In this code pattern, we’ll demonstrate another scenario where you can deploy a simple application to Kubernetes. We use COBOL (“common business-oriented language”) to showcase how enterprises or organizations can modernize their legacy applications with the help of Kubernetes.


If your company or organization has a legacy application and wants to start investigating the cloud native development process, then you’re on the right track. Leveraging Kubernetes and the cloud can help your organization modernize and better secure your systems and data, while streamlining the work without delaying the customer-facing front end.

In this code pattern, we take COBOL and Kubernetes as examples to show how you can compile applications just as you would on a mainframe with a little bit of engineering work. This code pattern shows you how easy it is to get a legacy COBOL application built and deployed as a batch job to the IBM Cloud Kubernetes Service.

When you complete this code pattern, you’ll know how to:

  • Build Docker containers locally.
  • Test a basic Docker container.
  • Push a Docker container to a remote registry.
  • Configure Kubernetes to pull from a remote registry and run a COBOL Hello World application.


Architecture diagram

  1. A local workstation is installed with Docker CE.
  2. The user creates a namespace in the IBM Cloud Container Registry.
  3. After successful binding on the IBM Cloud, the user requests an IBM Cloud Kubernetes cluster.
  4. Testing is done on the local workstation.
  5. The user then runs the job on the Kubernetes Service.


Ready to get started? For detailed instructions, please see the README.