Understanding odo

    Existing tools such as oc are operations-focused and require a deep understanding of Kubernetes and OKD concepts. abstracts away complex Kubernetes and OKD concepts allowing developers to focus on what is most important to them: code.

    odo is designed to be simple and concise with the following key features:

    • Simple syntax and design centered around concepts familiar to developers, such as projects, applications, and components.

    • Completely client based. No additional server other than OKD is required for deployment.

    • Official support for Node.js and Java components.

    • Detects changes to local code and deploys it to the cluster automatically, giving instant feedback to validate changes in real time.

    • Lists all the available components and services from the cluster.

    Core concepts

    Project

    A project is your source code, tests, and libraries organized in a separate single unit.

    Application

    An application is a program designed for end users. An application consists of multiple microservices or components that work individually to build the entire application. Examples of applications: a video game, a media player, a web browser.

    A component is a set of Kubernetes resources which host code or data. Each component can be run and deployed separately. Examples of components: Node.js, Perl, PHP, Python, Ruby.

    Service

    A service is software that your component links to or depends on. Examples of services: MariaDB, Jenkins, MySQL. In odo, services are provisioned from the OpenShift Service Catalog and must be enabled within your cluster.

    Listing available container images

    The list of available container images is sourced from the cluster’s internal container registry and external registries associated with the cluster.

    To list the available components and associated container images for your cluster:

    1. Log in to the cluster with odo: