# README
+++
+++
[id="readme"]
=
odo
- Developer-focused CLI for OpenShift
:toc: macro
:toc-title:
:toclevels: 1
https://github.com/openshift/odo/releases/latest[image:https://img.shields.io/github/v/release/openshift/odo?style=for-the-badge[GitHub release]] https://travis-ci.com/openshift/odo[image:https://img.shields.io/travis/com/openshift/odo?style=for-the-badge[Build Status]] image:https://img.shields.io/github/license/openshift/odo?style=for-the-badge[License]
[[overview]] == Overview
OpenShift Do (odo
) is a fast, iterative, and straightforward CLI tool for developers who write, build, and deploy applications on OpenShift.
Existing tools such as oc
are more operations-focused and require a deep-understanding of Kubernetes and OpenShift concepts. odo
abstracts away complex Kubernetes and OpenShift concepts for the developer, thus allowing developers to focus on what is most important to them: code.
[[key-features]] == Key features
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 project, application, and component.
- Completely client based. No server is required within the OpenShift cluster for deployment.
- Supports multiple languages and frameworks such as Node.js, Java, Ruby, Perl, PHP, and Python.
- Detects changes to local code and deploys it to the cluster automatically, giving instant feedback to validate changes in real-time.
- Lists all available components and services from the OpenShift cluster.
[[official-documentation]] == Official documentation
- link:https://docs.openshift.com/container-platform/4.2/cli_reference/openshift_developer_cli/installing-odo.html[Installing odo]
- link:https://docs.openshift.com/container-platform/4.2/cli_reference/openshift_developer_cli/creating-a-single-component-application-with-odo.html[Creating a single-component application with odo]
- link:https://docs.openshift.com/container-platform/4.2/cli_reference/openshift_developer_cli/creating-a-multicomponent-application-with-odo.html[Creating a multicomponent application with odo]
- link:https://docs.openshift.com/container-platform/4.2/cli_reference/openshift_developer_cli/creating-an-application-with-a-database.html[Creating an application with a database]
- link:https://docs.openshift.com/container-platform/4.2/cli_reference/openshift_developer_cli/configuring-the-odo-cli.html[Configuring the odo CLI]
- link:https://docs.openshift.com/container-platform/4.2/cli_reference/openshift_developer_cli/odo-cli-reference.html[odo CLI reference]
- link:https://docs.openshift.com/container-platform/4.2/cli_reference/openshift_developer_cli/odo-release-notes.html[odo release notes]
[[installing-odo]]
== Installing odo
To install on Linux / Windows / macOS follow our guide located on link:https://docs.openshift.com/container-platform/4.2/cli_reference/openshift_developer_cli/installing-odo.html[docs.openshift.com]. All binaries and tarballs are synced between our link:https://github.com/openshift/odo/releases[GitHub releases] and link:https://mirror.openshift.com/pub/openshift-v4/clients/odo/[OpenShift mirrors].
[[deploying-your-first-application]] == Deploying your first application
Click on the tutorial below to deploy your first odo
application:
link:https://docs.openshift.com/container-platform/4.2/cli_reference/openshift_developer_cli/creating-a-single-component-application-with-odo.html[Creating a single-component application with odo]
The following demonstration provides an overview of odo
:
[[contributing]] == Community, discussion, contribution, and support
Chat: Join us on link:https://join.slack.com/t/openshiftdo/shared_invite/enQtODUwMjIzMzE2MjYyLWM3YjlkNTViOGNjZGQ5YjFlMzc2N2RhZjVmMDQ5NWY5ZDQ3NzMzZjYxMTE1MjY5OTVmZjgxZWMyMGRmOTc4Y2I[Slack].
Discussions: For any developmental discussions with odo
, use our link:https://groups.google.com/forum/\#!forum/odo-dev[odo-dev Google group], for general help and inquiries, join our link:https://groups.google.com/forum/\#!forum/odo-users[odo-users Google group].
Issues: If you have an issue with odo
, please link:https://github.com/openshift/odo/issues[file it].
Documentation Issues: If you have any documentation issues related to the link:https://docs.openshift.com[docs.openshift.com] site, file an issue in link:https://bugzilla.redhat.com/[Bugzilla]. Choose the OpenShift Container Platform product type and the Documentation component type.
Contributing: Want to become a contributor and submit your own code? Have a look at our link:https://github.com/openshift/odo/blob/master/docs/dev/development.adoc[Development Guide].
[[projects-using-odo]] == Projects using odo
These are some of the IDE plugins which use odo:
- link:https://marketplace.visualstudio.com/items?itemName=redhat.vscode-openshift-connector[VS Code Openshift Connector]
- link:http://plugins.jetbrains.com/plugin/12030-openshift-connector-by-red-hat[Openshift Connector for Intellij]
- link:https://www.eclipse.org/codewind[Codewind for Eclipse Che]
[[glossary]] == Glossary
Application: An application consists of multiple microservices or components that work individually to build the entire application.
Component: A component is similar to a microservice. Multiple
components make up an application. A component has different attributes like storage. odo
supports multiple component types like nodejs, perl, php, python, and ruby.
Service: Typically a service is a database or a service that a component links to or depends on. For example: MariaDB, Jenkins, MySQL. This comes from the OpenShift Service Catalog and must be enabled within your cluster.