Chapter 2. Get Started with the CLI
2.1. Overview
The OpenShift Online CLI exposes commands for managing your applications, as well as lower level tools to interact with each component of your system. This topic guides you through getting started with the CLI, including installation and logging in to create your first project.
2.2. Installing the CLI
Installation options for the CLI vary depending on your operating system.
To log in using the CLI, collect your token from the web console’s Command Line page, which is accessed from Command Line Tools in the Help menu. The token is hidden, so you must click the copy to clipboard button at the end of the oc login
line on the Command Line Tools page, then paste the copied contents to show the token.
2.2.1. For Windows
The CLI for Windows is provided as a zip archive; you can download it from the Command Line Tools page on the web console.
Then, unzip the archive with a ZIP program and move the oc
binary to a directory on your PATH. To check your PATH, open the Command Prompt and run:
C:\> path
2.2.2. For Mac OS X
The CLI for Mac OS X is provided as a tar.gz archive; you can download it from the Command Line Tools page on the web console.
Then, unpack the archive and move the oc
binary to a directory on your PATH. To check your PATH, open a Terminal window and run:
$ echo $PATH
2.2.3. For Linux
The CLI for Linux is provided as a tar.gz archive; you can download it from the Command Line Tools page on the web console.
Then, unpack the archive and move the oc
binary to a directory on your PATH. To check your path, run:
$ echo $PATH
To unpack the archive:
$ tar -xf <file>
If you do not use RHEL or Fedora, ensure that libc is installed in a directory on your library path. If libc is not available, you might see the following error when you run CLI commands:
oc: No such file or directory
2.3. Basic Setup and Login
The oc login
command is the best way to initially set up the CLI, and it serves as the entry point for most users. The interactive flow helps you establish a session to an OpenShift Online server with the provided credentials. The information is automatically saved in a CLI configuration file that is then used for subsequent commands.
The following example shows the interactive setup and login using the oc login
command:
Example 2.1. Initial CLI Setup
$ oc login OpenShift server [https://localhost:8443]: https://openshift.example.com 1 Username: alice 2 Authentication required for https://openshift.example.com (openshift) Password: ****** Login successful. 3 You don't have any projects. You can try to create a new project, by running $ oc new-project <projectname> 4 Welcome to OpenShift! See 'oc help' to get started.
When you have completed the CLI configuration, subsequent commands use the configuration file for the server, session token, and project information.
You can log out of CLI using the oc logout
command:
$ oc logout User, alice, logged out of https://openshift.example.com
If you log in after creating or being granted access to a project, a project you have access to is automatically set as the current default, until switching to another one:
$ oc login Username: alice Authentication required for https://openshift.example.com (openshift) Password: Login successful. Using project "aliceproject".
Additional options are also available for the oc login
command.
2.4. CLI Configuration Files
A CLI configuration file permanently stores oc
options and contains a series of authentication mechanisms and OpenShift Online server connection information associated with nicknames.
As described in the previous section, the oc login
command automatically creates and manages CLI configuration files. All information gathered by the command is stored in a configuration file located in ~/.kube/config. The current CLI configuration can be viewed using the following command:
Example 2.2. Viewing the CLI Configuration
$ oc config view apiVersion: v1 clusters: - cluster: server: https://openshift.example.com name: openshift contexts: - context: cluster: openshift namespace: aliceproject user: alice name: alice current-context: alice kind: Config preferences: {} users: - name: alice user: token: NDM2N2MwODgtNjI1Yy10N3VhLTg1YmItYzI4NDEzZDUyYzVi
CLI configuration files can be used to setup multiple CLI profiles using various OpenShift Online servers, namespaces, and users so that you can switch easily between them. The CLI can support multiple configuration files; they are loaded at runtime and merged together along with any override options specified from the command line.
2.5. Projects
$ oc project
If you have access to multiple projects, use the following syntax to switch to a particular project by specifying the project name:
$ oc project <project_name>
For example:
$ oc project project02 Now using project 'project02'. $ oc project project03 Now using project 'project03'. $ oc project Using project 'project03'.