Difficulty: beginner
Estimated Time: 10-15 minutes


Learn how to use the OpenShift Do (odo) command line tool to build and deploy applications on OpenShift.


  • odo developer tool abstracts deployment tasks
  • OpenShift Projects and Applications
  • OpenShift Web Console’s Developer Perspective
  • Multi-tiered applications with a web frontend
  • Automatic OpenShift Builds for iterative development

Use case

Odo is a developer-centric tool for building and running software on OpenShift. Odo streamlines common build and deployment tasks to let you focus on your application’s source code. You can use odo to reduce the cognitive load and rote steps of building components, linking them together, and routing traffic to them on the OpenShift Container Platform.

This OpenShift cluster will self-destruct in one hour.

Congratulations! You just learned the basics of using the odo tool to manage application components on the OpenShift Container Platform.

Continue Learning

You can continue learning more about OpenShift and how to develop applications on the platform by completing other tutorials at https://learn.openshift.com.

For developer-related resources about OpenShift, visit https://developers.redhat.com/products/openshift/getting-started.

Run OpenShift Locally with CodeReady Containers

CodeReady Containers allows you to run a minimal, pre-configured OpenShift 4 cluster on your local machine. The project supports Windows 10, macOS, and Linux. To find out more or download CodeReady Containers, visit https://developers.redhat.com/products/codeready-containers/overview

Compare Hosted, Managed, or On Premises OpenShift

Learn more about the different OpenShift platform variants here: https://www.openshift.com/try

Browse the Documentation

If you want to learn about particular OpenShift concepts in more depth, visit the documentation: https://docs.openshift.com/container-platform/latest

Developing with odo

Step 1 of 7

Application Overview

The application you will be deploying is a wild west shooter style game.

Applications are often divided into components based on a logical division of labor. For example, an application might consist of a data-storage, backend component that performs the application's primary work and stores the results. The backend component is paired with a user interface, frontend component that accesses the backend to retrieve data and displays it to a user.

The application deployed in this tutorial consists of two such components.


The backend is a Java Spring Boot application. It performs queries against the Kubernetes and OpenShift REST APIs to retrieve a list of the resource objects that were created when you deployed the application. Then, it returns details about these resource objects to the frontend.


The frontend is the user interface for a wild west style game written in Node.js. It displays popup images which you can shoot, corresponding to the resource objects returned by the backend.