# Delete the application odo app delete myapp # Describe 'webapp' application, odo app describe webapp # List all applications in the current project odo app list # List all applications in the specified project odo app list --project myproject
Perform application operations related to your OpenShift Container Platform project.
# Delete the application odo app delete myapp # Describe 'webapp' application, odo app describe webapp # List all applications in the current project odo app list # List all applications in the specified project odo app list --project myproject
Perform catalog-related operations.
# Get the supported components odo catalog list components # Get the supported services from service catalog odo catalog list services # Search for a component odo catalog search component python # Search for a service odo catalog search service mysql # Describe a service odo catalog describe service mysql-persistent
Manage components of an application.
# Create a new component odo component create # Create a local configuration and create all objects on the cluster odo component create --now
Modify odo
specific settings within the config
file.
# For viewing the current local configuration odo config view # Set a configuration value in the local configuration odo config set Type java odo config set Name test odo config set MinMemory 50M odo config set MaxMemory 500M odo config set Memory 250M odo config set Ignore false odo config set MinCPU 0.5 odo config set MaxCPU 2 odo config set CPU 1 # Set an environment variable in the local configuration odo config set --env KAFKA_HOST=kafka --env KAFKA_PORT=6639 # Create a local configuration and apply the changes to the cluster immediately odo config set --now # Unset a configuration value in the local config odo config unset Type odo config unset Name odo config unset MinMemory odo config unset MaxMemory odo config unset Memory odo config unset Ignore odo config unset MinCPU odo config unset MaxCPU odo config unset CPU # Unset an env variable in the local config odo config unset --env KAFKA_HOST --env KAFKA_PORT
Application |
Application is the name of application the component needs to be part of |
CPU |
The minimum and maximum CPU a component can consume |
Ignore |
Consider the .odoignore file for push and watch |
Application |
The name of application that the component needs to be part of |
CPU |
The minimum and maximum CPU a component can consume |
Ignore |
Whether to consider the |
MaxCPU |
The maximum CPU a component can consume |
MaxMemory |
The maximum memory a component can consume |
Memory |
The minimum and maximum memory a component can consume |
MinCPU |
The minimum CPU a component can consume |
MinMemory |
The minimum memory a component is provided |
Name |
The name of the component |
Ports |
Ports to be opened in the component |
Project |
The name of the project that the component is part of |
Ref |
Git ref to use for creating component from git source |
SourceLocation |
The path indicates the location of binary file or git source |
SourceType |
Type of component source - git/binary/local |
Storage |
Storage of the component |
Type |
The type of component |
Url |
The URL to access the component |
Create a configuration describing a component to be deployed on OpenShift Container Platform. If a component name is not provided, it is autogenerated.
By default, builder images are used from the current namespace. To explicitly supply a namespace, use: odo create namespace/name:version
. If a version is not specified, the version defaults to latest
.
Use odo catalog list
to see a full list of component types that can be deployed.
# Create new Node.js component with the source in current directory. odo create nodejs # Create new Node.js component and push it to the cluster immediately. odo create nodejs --now # A specific image version may also be specified odo create nodejs:latest # Create new Node.js component named 'frontend' with the source in './frontend' directory odo create nodejs frontend --context ./frontend # Create a new Node.js component of version 6 from the 'openshift' namespace odo create openshift/nodejs:6 --context /nodejs-ex # Create new Wildfly component with binary named sample.war in './downloads' directory odo create wildfly wildfly --binary ./downloads/sample.war # Create new Node.js component with source from remote git repository odo create nodejs --git https://github.com/openshift/nodejs-ex.git # Create new Node.js git component while specifying a branch, tag or commit ref odo create nodejs --git https://github.com/openshift/nodejs-ex.git --ref master # Create new Node.js git component while specifying a tag odo create nodejs --git https://github.com/openshift/nodejs-ex.git --ref v1.0.1 # Create new Node.js component with the source in current directory and ports 8080-tcp,8100-tcp and 9100-udp exposed odo create nodejs --port 8080,8100/tcp,9100/udp # Create new Node.js component with the source in current directory and env variables key=value and key1=value1 exposed odo create nodejs --env key=value,key1=value1 # For more examples, visit: https://github.com/openshift/odo/blob/master/docs/examples.adoc odo create python --git https://github.com/openshift/django-ex.git # Passing memory limits odo create nodejs --memory 150Mi odo create nodejs --min-memory 150Mi --max-memory 300 Mi # Passing cpu limits odo create nodejs --cpu 2 odo create nodejs --min-cpu 200m --max-cpu 2
Debug a component.
# Displaying information about the state of debugging odo debug info # Starting the port forwarding for a component to debug the application odo debug port-forward # Setting a local port to port forward odo debug port-forward --local-port 9292
Delete an existing component.
# Delete component named 'frontend'. odo delete frontend odo delete frontend --all-apps
Describe the given component.
# Describe nodejs component odo describe nodejs
Link a component to a service or component.
# Link the current component to the 'my-postgresql' service odo link my-postgresql # Link component 'nodejs' to the 'my-postgresql' service odo link my-postgresql --component nodejs # Link current component to the 'backend' component (backend must have a single exposed port) odo link backend # Link component 'nodejs' to the 'backend' component odo link backend --component nodejs # Link current component to port 8080 of the 'backend' component (backend must have port 8080 exposed) odo link backend --port 8080
Link adds the appropriate secret to the environment of the source component. The source component can then consume the entries of the secret as environment variables. If the source component is not provided, the current active component is assumed.
List all the components in the current application.
# List all components in the application odo list
Retrieve the log for the given component.
# Get the logs for the nodejs component odo log nodejs
Log in to the cluster.
# Log in interactively odo login # Log in to the given server with the given certificate authority file odo login localhost:8443 --certificate-authority=/path/to/cert.crt # Log in to the given server with the given credentials (basic auth) odo login localhost:8443 --username=myuser --password=mypass # Log in to the given server with the given credentials (token) odo login localhost:8443 --token=xxxxxxxxxxxxxxxxxxxxxxx
Log out of the current OpenShift Container Platform session.
# Log out odo logout
Modify odo
specific configuration settings within the global preference file.
# For viewing the current preferences odo preference view # Set a preference value in the global preference odo preference set UpdateNotification false odo preference set NamePrefix "app" odo preference set Timeout 20 # Enable experimental mode odo preference set experimental true # Unset a preference value in the global preference odo preference unset UpdateNotification odo preference unset NamePrefix odo preference unset Timeout # Disable experimental mode odo preference set experimental false
By default, the path to the global preference file is |
NamePrefix |
The default prefix is the current directory name. Use this value to set a default name prefix. |
Timeout |
The timeout (in seconds) for OpenShift Container Platform server connection checks. |
UpdateNotification |
Controls whether an update notification is shown. |
Perform project operations.
# Set the active project odo project set # Create a new project odo project create myproject # List all the projects odo project list # Delete a project odo project delete myproject # Get the active project odo project get
Push source code to a component.
# Push source code to the current component odo push # Push data to the current component from the original source. odo push # Push source code in ~/mycode to component called my-component odo push my-component --context ~/mycode
Perform service catalog operations.
# Create new postgresql service from service catalog using dev plan and name my-postgresql-db. odo service create dh-postgresql-apb my-postgresql-db --plan dev -p postgresql_user=luke -p postgresql_password=secret # Delete the service named 'mysql-persistent' odo service delete mysql-persistent # List all services in the application odo service list
Perform storage operations.
# Create storage of size 1Gb to a component odo storage create mystorage --path=/opt/app-root/src/storage/ --size=1Gi # Delete storage mystorage from the currently active component odo storage delete mystorage # Delete storage mystorage from component 'mongodb' odo storage delete mystorage --component mongodb # List all storage attached or mounted to the current component and # all unattached or unmounted storage in the current application odo storage list # Set the `-o json` flag to get a JSON formatted output odo storage list -o json
Unlink component or a service.
For this command to be successful, the service or component must have been linked prior to the invocation using odo link
.
# Unlink the 'my-postgresql' service from the current component odo unlink my-postgresql # Unlink the 'my-postgresql' service from the 'nodejs' component odo unlink my-postgresql --component nodejs # Unlink the 'backend' component from the current component (backend must have a single exposed port) odo unlink backend # Unlink the 'backend' service from the 'nodejs' component odo unlink backend --component nodejs # Unlink the backend's 8080 port from the current component odo unlink backend --port 8080
Update the source code path of a component
# Change the source code path of a currently active component to local (use the current directory as a source) odo update --local # Change the source code path of the frontend component to local with source in ./frontend directory odo update frontend --local ./frontend # Change the source code path of a currently active component to git odo update --git https://github.com/openshift/nodejs-ex.git # Change the source code path of the component named node-ex to git odo update node-ex --git https://github.com/openshift/nodejs-ex.git # Change the source code path of the component named wildfly to a binary named sample.war in ./downloads directory odo update wildfly --binary ./downloads/sample.war
Expose a component to the outside world.
# Create a URL for the current component with a specific port odo url create --port 8080 # Create a URL with a specific name and port odo url create example --port 8080 # Create a URL with a specific name by automatic detection of port (only for components which expose only one service port) odo url create example # Create a URL with a specific name and port for component frontend odo url create example --port 8080 --component frontend # Delete a URL to a component odo url delete myurl # List the available URLs odo url list # Create a URL in the configuration and apply the changes to the cluster odo url create --now # Create an HTTPS URL odo url create --secure
The URLs that are generated using this command can be used to access the deployed components from outside the cluster.
Utilities for terminal commands and modifying odo configurations.
# Bash terminal PS1 support source <(odo utils terminal bash) # Zsh terminal PS1 support source <(odo utils terminal zsh)