Catalog ScaleEnterpriseSelf-Hosted
The Catalog feature allows admins
to pre-configure a list of applications from the Okteto Admin Dashboard.
These applications are available to developers in the same Okteto instance when launching a development environment from the UI.
By using Catalog entries, developers can quickly deploy their environments without needing to manually configure Okteto manifests or set up environment variables.
This feature allows Okteto administrators to enhance the developer experience by streamlining workflows, making it easier for developers to begin their projects.
If you see a “Read-only” tag next to catalog items in the interface, it means that these items were defined using Custom Resource Definitions (CRDs). Such items cannot be modified through the Admin Dashboard. To make changes, you will need to update the associated CRD directly. For more information, refer to the Managing Catalog Items using CRDs documentation.
Create your Catalog
You have two options for creating and managing Catalog items:
- Create Catalog items via the Dashboard or
- Create Catalog items using Custom Resource Definitions (CRDs)
Only accounts with the administrator role can use this feature.
Create and Manage Catalog Items via the Dashboard
Within the Okteto Dashboard, navigate to Admin -> Catalog under the Cluster Management section. On this page, click the Add Repository
button to open the Add Repository
form.
Add an application to the Catalog
Completing this form adds an entry to your Catalog, which is basically a pre-defined application configuration that enables a developer to one-click deploy a development environment using that repository and the definition you’ve provided for it.
Fill out as much of the form that makes sense for you. You will see:
- Name*
- Repository URL*
- Default Branch
- Manifest Path
- Environment Variables
Only the Name
and Repository URL
fields are required. When done, click Save
.
Define a Default Branch
The default branch you specify here will be the default branch used when a developer selects this Catalog item to deploy a development environment.
You can specify multiple Catalog entries for the same Repository URL
and set a different Default Branch
for each one if your use case necessitates that.
Define a Manifest Path
This field should (optionally) point to where your Okteto manifest resides. This provides additional control to provide a smoother experience for developers who deploy a development environment from the Catalog.
Add Environment Variables
You can also (optionally) add Environment Variables to your Catalog entry to standardize how the development environment is deployed. Similar to the Default Branch entry, you could specify multiple catalog entries for the same Repository URL each with different Environment Variables.
Create and Manage Catalog Items via Custom Resource Definitions (CRDs)
You can also manage your catalog using Custom Resource Definitions (CRDs) to configure and manage items programmatically. This approach is particularly useful for teams leveraging GitOps workflows or automating deployments with tools like kubectl. This approach can be useful if you'd like to have a default Catalog on installation.
Using CRDs for catalog items allows you to define configurations as code, which can then be applied to your cluster. Once applied, these catalog items will appear in the Okteto UI, but they cannot be modified through the dashboard. They will be shown with the tag "Read-only." If you prefer to manage Catalog items directly via the UI, you should create them there instead.
For detailed instructions on using CRDs in Okteto, including examples, refer to the Custom Resource Definitions documentation.
Deploy a Dev Environment from your Catalog
Once you’ve defined your Catalog entries, you can navigate to Namespaces
→ Deploy Dev Environment
→ Catalog
.
In this section you should see all of the repositories you’ve added (and pre-configured). Select an entry you wish to use and click Deploy
.