Skip to content

Red Hat OpenShift Local Extension for integration of OpenShift Local clusters with Podman Desktop

License

Notifications You must be signed in to change notification settings

crc-org/crc-extension

Repository files navigation

Red Hat OpenShift Local extension

Integration for Red Hat OpenShift Local clusters. It will help you install and set up the environment, and allows you to control the lifecycle and configuration from Podman Desktop. Some of the features available in the extension include:

  • Start/Stop/Restart/Delete OpenShift Local clusters
  • Change the OpenShift Local cluster preset
  • Update the OpenShift Local version

Index

Installation

Requirements

You need to have a working Podman Desktop installation. Each preset of OpenShift Local has their own requirements, please check the documentation for more information.

Preset types

  • Microshift (experimental)
    Provides a lightweight and optimized environment with a limited set of services.
  • OpenShift
    Provides a single node OpenShift cluster with a fuller set of services, including a web console (requires more resources).

Pull-secret

To pull container images from the registry, a pull secret is necessary. You can get a pull secret by navigating to the dashboard and clicking the Obtain pull-secret or opening the Red Hat OpenShift Local download page in your browser.

Extension installation

  1. Open Podman Desktop.
  2. Go to the Extensions page: Extension's navbar button
  3. Now you have two options:
    1. Switch to the Catalog tab and click on the Install icon in the Red Hat OpenShift Local extension item: Install extension from catalog

    2. Or click on the Install custom... button on the upper right corner, enter ghcr.io/crc-org/crc-extension in the OCI Image field, and click on Install:

      Install extension from OCI image

      This second approach is useful to get older versions or development releases.

OpenShift Local installation

If you don't have OpenShift Local installed in your system already, Podman Desktop can handle it for you.

Go to the Dashboard page, and in the OpenShift Local section you will find the NOT-INSTALLED label. Click on the Install button:

Install OpenShift Local button

A dialog will appear, click on the Yes button:

Install OpenShift Local dialog

Follow the OpenShift Local installation wizard, picking the options that suit your needs:

Install OpenShift Local wizard dialog

You can check the progress on the download of the binaries on the bottom of the interface:

OpenShift Local download progress bar

Usage

Once installed, you can configure the default Preset parameter used to create the OpenShift Local Cluster in the extension's Settings page:

Preset option on Settings/Preferences page

To create a new OpenShift Local cluster, you have three options:

  1. Switch to the Resources tab on the Settings page and press the Create new ... button:

    'Create new...' option on Settings/Resources

    Then, in the newly opened dialog, configure the cluster to your needs and click on the Create button: Cluster configuration dialog

  2. From the Dashboard, in the OpenShift Local section, click on the Initialize and start button:

    'Initialize and Start' option on the Dashboard page

  3. From the Dashboard, in the OpenShift Local section, click on the dropdown button next to Initialize and start and select Initialize OpenShift Local:

    'Initialize' option on the Dashboard page part 1

    And then click on the Initialize button: 'Initialize' option on the Dashboard page part 2

When a new cluster has been created there should be a new connection visible in the Resources page, under the OpenShift Local section:

New connection in Settings/Resources

Deployment to OpenShift Local

To deploy your first application to OpenShift Local, pull the httpd-24 image from the public Red Hat image registry using the Pull an Image page. To do so, open the Images page using the activity bar and press Pull button in upper right corner:

Opening the Images page

Paste registry.access.redhat.com/ubi8/httpd-24 into the Image to pull field and press the Pull Image button:

Pulling an image dialog

After the image was sucessfully pulled from the registry press the Done button to navigate back to the Images page:

Image successfully pulled

Request the context menu for the httpd-24 image you just pulled by clicking on the right most button in the row. Then select the Push image to OpenShift Local cluster* menu item:

Pushing an image to the OpenShift Local cluster option

*Note: if the option does not appear on the context menu, try to restart Podman Desktop with Exit On Close preference enabled (this is a known issue).

The progress for the Push command is available in the Podman Desktop Tasks View:

Image pushing progress on Tasks view

When the Push command is done, the image is ready to be deployed to the OpenShift Local cluster. First start a local container from the image using the Run button:

Button to deploy an image to the OpenShift Local cluster

On the Run Image form leave the default values and press Start Container button:

Start Container button

After the local container is up and running, it can be deployed to OpenShift Local cluster using the Deploy to Kubernetes button in the upper right corner of Container Details page:

Button to open Deploy to Kubernetes dialog

On the Deploy to Kubernetes form make sure the Kubernetes Context field is crc-admin and press the Deploy button:

Deploy to Kubernetes button

The bottom part of the page shows the status of deployment. When Container statuses contains Ready (Running) it means the httpd server is running in the OpenShift Local cluster. There is also a link to open the OpenShift Developer Console where you can manage your local cluster:

Result of successful deployment

Clicking on the link below Container statuses opens the httpd server index page:

HTTPD server index page

You have deployed your application to OpenShift!