Skip to main content

How to Configure your Custom Helm Repository

With Okteto Cloud you can deploy Helm Charts with one click. A default list of Helm Charts is provided to get you and your team up and running.

You can add your own Helm repositories to Okteto Cloud to extend this list. This gives you the same one-click deployment experience with the services that you and your team use. You can use this to simplify onboarding and standarize your dependencies.

In order to add your Helm Charts, you'll need a Helm chart repository index with at least one published chart. Follow this guide to learn how to do it.

Add your repository to Okteto Cloud

On the left side of the Okteto Cloud UI click the Settings option. In the new window, click the Integrations tab. The Okteto Cloud UI will show you the Helm repositories you have configured in Okteto Cloud. Click the Add Repository button and put the address of your repository:

add a Helm repository

The Helm Charts from your Help repository will now be included in the Deploy from Helm Chart dialog.

Suggest default values

The values.yaml file of your Helm Chart contains all the default configuration values for your Helm releases. This file can be too complex for anyone who is not familiar with your application. Place a values-okteto.yaml file side by side with your values.yaml file to show the recommended options to the users. Okteto will automatically load the values-okteto.yaml file and show it in the Deploy from Helm Chart dialog.

Make your chart multi-tenant friendly.

Okteto Cloud is a multi-tenant environment. It gives you access to a Kubernetes namespace with a few restrictions in place to make it safer and easier to use for everyone.

Your Helm chart will need to comply with these restrictions to function properly in Okteto Cloud:

  • Your chart cannot create ClusterRole or ClusterRoleBinding objects.
  • NodePort and LoadBalancer service types are not supported. Okteto Cloud automatically translates NodePort or LoadBalancer services into ingress rules. More information is available here.
  • The following Pod options are not allowed: privileged, hostNetwork, allowPrivilegeEscalation, hostPID, hostIPC. Volume host paths are not allowed either.

More information about our multi-tenant policies is available here.