Overview: Develop containers using Podman Desktop and Kubernetes
Introduction
Looking to learn how to create, manage, and deploy containers? This learning path demonstrates how you can go from an initial application to a container to a fully running pod on Kubernetes using Podman Desktop, and the no-cost Developer Sandbox for Red Hat OpenShift. Here's a quick rundown of key technologies you’ll be using today:
- Container: An isolated environment containing everything your application needs to run.
- Image: The blueprint for a container, including the application and its dependencies.
- Pod: The smallest deployable unit in Kubernetes, often containing one or more containers.
- Kubernetes: An open-source platform for automating deployment, scaling, and operations of application containers.
Together, these components represent a complete ecosystem for developing, packaging, and managing applications in an efficient, scalable manner.
Prerequisites
You will need the following to complete this learning path:
- A Developer Sandbox for Red Hat OpenShift (Developer Sandbox) account. See How to access the Developer Sandbox for a step-by-step guide.
- The OpenShift command-line tool,
oc
. You can find the installation instructions on this page. - Podman Desktop installed locally, which will guide you through installing Podman if necessary.
- The GitHub command-line interface (CLI), which will help you download the example Python front-end application.
- Access to a container registry, such as Quay.io or Docker Hub, where you can push our containerized image to be used remotely.
What you’ll be doing
As you complete this learning path, you will:
- Build a container image from a sample Python application using Podman Desktop.
- Pull down a Redis database container image from an existing container registry.
- Manage and test out the two running containers that form one microservice-based application.
- Push a container image to a remote registry on Quay.io for sharing and distribution.
- Create a Kubernetes pod using two containers and test locally using the Podman Desktop Kind extension.
- Deploy the pod to the Developer Sandbox for OpenShift.
How long will this activity take?
- You should budget about 60 minutes to complete this learning path.
What you will learn
- How to use Podman Desktop and Developer Sandbox for iterative development of services.
Programming languages
- The front-end (web) application for this learning path is written in Python.
If you need help
If you get stuck, if something isn’t working, or you simply have questions, you can easily contact us via email at devsandbox@redhat.com.