`odo` can be used to deploy components in a manner similar to how they would be deployed using a CI/CD system.
First, `odo` builds the container images, and then it deploys the Kubernetes resources required to deploy the components.
When running the command `odo deploy`, `odo` searches for the default command of kind `deploy` in the devfile, and executes this command.
The kind `deploy` is supported by the devfile format starting from version 2.2.0.
The `deploy` command is typically a _composite_ command, composed of several _apply_ commands:
* A command referencing an `image` component that, when applied, will build the image of the container to deploy, and then push it to its registry.
* A command referencing a link:https://devfile.io/docs/devfile/2.2.0/user-guide/adding-kubernetes-component-to-a-devfile.html[Kubernetes component] that, when applied, will create a Kubernetes resource in the cluster.
With the following example `devfile.yaml` file, a container image is built using the `Dockerfile` present in the directory.
The image is pushed to its registry and then a Kubernetes Deployment resource is created in the cluster, using this freshly built image.