OpenShift - Build and Deploy a Simple Web Application
Knowing how to administer and manage OpenShift from the command line using the oc tool is an essential skill that boosts productivity. Complementing this is OpenShifts S2I technology which focuses on streamlining the process of building repeatable and consistent containerized environments.
In this Lab scenario, you'll first use S2I to create a basic builder container image. The builder container image will then be used to build a runtime container image containing a simple static web portal application frontend. You'll then use the oc tool to launch and expose the containerized web portal application.
Upon completion of this Lab, you will be able to:
- Use the oc command and S2I technology to build a new container builder image
- Use the oc command to inject web application source code into the new container builder image to produce a new runnable container image which is then launched
- Use the oc command to expose the newly launched web application pod
- Test and validate the container setup using the curl command and the browser
- Be comfortable with basic Linux command line administration
- Be comfortable with basic container concepts
This Lab will start with the following AWS resources provisioned automatically for you:
- Two EC2 instances:
- ide.containers.cloudacademy.platform.instance - provides a web-based IDE which you will connect to using the assigned public IP address
- openshift.cluster.cloudacademy.platform.instance - hosts an OpenShift 3.x Kubernetes cluster
To achieve the Lab end state, you will be walked through the process of:
- Using your local workstation browser to remotely connect to ide.containers.cloudacademy.platform.instance
- Using the web-based IDE and integrated terminal, you'll complete the remainder of the stated Lab Objectives (above)
November 16th, 2022 - Resolved deployment error and updated the instructions and screenshots to reflect the latest UI
December 3rd, 2021 - Rebuilt the underlying image for the OpenShift instance to resolve an issue with lab provisioning
Jeremy is a Content Lead Architect and DevOps SME here at Cloud Academy where he specializes in developing DevOps technical training documentation.
He has a strong background in software engineering, and has been coding with various languages, frameworks, and systems for the past 25+ years. In recent times, Jeremy has been focused on DevOps, Cloud (AWS, Azure, GCP), Security, Kubernetes, and Machine Learning.
Jeremy holds professional certifications for AWS, Azure, GCP, Terraform, Kubernetes (CKA, CKAD, CKS).