Manage Helm Chart
Cloud Container Registry (CCR) enterprise edition offers Helm Chart functionality, allowing you to upload and download charts via the console or Helm tool. This enables you to host and distribute Kubernetes cluster resources efficiently and conveniently.
- A Chart is a collection of resource description files for a Kubernetes cluster. It could range from a simple WordPress application to a complex etcd cluster setup.
- Helm is a command-line tool for managing these charts and their deployed states, known as Releases.
Both Helm Chart registry and image registry belong to namespace and inherit attributes such as access type from namespace. For details, please refer to [Manage Namespace](CCR/Enterprise Edition Operation Guide/Manage Namespace.md).
Background
Cloud Container Registry (CCR) enterprise edition supports hosting both V2 and V3 Helm Charts, catering to your management needs for various resource types. The features of Helm Chart vary depending on its version:
- For V2 Helm Charts, you must host them via the Helm Chart registry.
- For V3 Helm Charts, you can host them either directly through the image registry or via the Helm Chart registry.
Prerequisites
- Successfully [Create Enterprise Edition Instance](CCR/Enterprise Edition Operation Guide/Create Enterprise Edition Instance.md).
- Each instance must contain at least one namespace. For detailed information, refer to [Manage Namespace](CCR/Enterprise Edition Operation Guide/Manage Namespace.md).
Operation steps
Manage Helm Chart via console
Upload Helm Chart package
- Sign in to Cloud Container Registry Console.
- Select Instance List in the left navigation bar.
- Select the target instance from the Instance List page.
- Select Helm Chart in the left navigation bar on the Instance Management page.
- On the Helm Chart page, click Upload, and then complete the relevant configurations on the Upload Helm Chart page:
| ConfigMap | Required/Optional | Configuration |
|---|---|---|
| Namespace | Required | The namespace to which the Helm Chart belongs. |
| Chart files | Required | A local Helm Chart compressed package, which only supports the .tgz format. |
| Prov files | Optional | A Chart provenance file. If the chart file is signed, the corresponding provenance file must be uploaded. |
Note
Uploading a file with the same name will overwrite the existing chart. Please proceed with caution.
- Click OK to begin uploading the chart package to the Helm Chart registry. After uploading, you can view the uploaded Helm Chart in the registry list.
Helm Chart registry operations
On the Instance > Helm Chart list page, you can operate as below to manage Helm Chart registry:
View Helm Chart Information
Click on the name of the specific Helm Chart registry to access its sub-page, where you can view chart details and manage chart versions.
Delete Helm Chart Registry
Click Delete corresponding to the Helm Chart registry, and then click OK in the deletion confirmation box to delete the chart registry. Batch deletion of multiple chart registries is also supported.
Note
Deleting the Helm Chart registry will permanently remove all data within it, and recovery will not be possible. Please proceed with caution.
Manage chart versions
Click the name of the specified Helm Chart registry to enter its sub-page. On the Version Management page in the left navigation bar, you can manage chart versions in the registry and perform download and delete operations, as shown below:

Download
Click Download in the operation column on the right to download the specified chart version locally. Multiple chart versions can be downloaded at once.
Delete
Click Delete in the operation column at the right of the specified chart version, and then click OK in the deletion confirmation box to delete the chart version. Batch deletion of multiple chart versions is also supported.
Push and pull charts through the Helm client
Use the image registry to host charts
Use Helm 3.7 or later client to push and pull charts
- Download the appropriate Helm version from the official website.
Description
Ensure the client is version v3.7 or higher version. You can view the client version by executing the command
helm3 version -c.
-
Enable experimental features for Helm version 3.7 and above.
Plain Text1 >$ export HELM_EXPERIMENTAL_OCI=1 -
Log in to the enterprise edition instance using your Baidu AI Cloud account as the username.
Plain Text1 >$ helm3 registry login -u [Image Registry Login Name] [Public or Virtual Private Cloud Endpoint]
Enter the login password specified in the access credentials, either fixed or temporary.
-
Create a chart named "ccr-chart-demo.\
Plain Text1 >$ helm3 create ccr-chart-demo -
Compress the chart directory locally into a file named demo.tgz.
Plain Text1 >$ tar -zcvf demo.tgz ccr-chart-demo -
Upload the compressed chart package to the image registry.
Plain Text1 >$ helm3 push demo.tgz oci://[Public or Virtual Private Cloud Endpoint]/[Namespace] -
Download the compressed chart package from the image registry.
Plain Text1 >$ helm3 pull oci://[Public or Virtual Private Cloud Endpoint]/[Namespace]/[Image Registry Name] -- version [Image Version] -
Unzip the compressed chart package locally.
Plain Text1 >$ tar -xcvf [Image Version].tgz
Use Helm 3.7 earlier client to push and pull charts
- Download the appropriate Helm version from the official website.
Description
Ensure the client is v3.7 earlier version. You can view the client version by executing the command
helm3 version -c.
-
Enable experimental features for Helm versions earlier than 3.7.
Plain Text1 >$ export HELM_EXPERIMENTAL_OCI=1 -
Log in to the enterprise edition instance using the Baidu AI Cloud user account as the username.
Plain Text1 >$ helm3 registry login -u [Image Registry Login Name] [Public or Virtual Private Cloud Endpoint]
Enter the login password specified in the access credentials, either fixed or temporary.
-
Create a chart named "ccr-chart-demo.\
Plain Text1 >$ helm3 create ccr-chart-demo -
Save the chart directory as a tagged version in the image registry.
Plain Text1 >$ helm3 chart save ccr-chart-demo [Public or Virtual Private Cloud Endpoint]/[Namespace]/[Image Registry Version Name]:[Version No.] -
Upload the tagged version to the instance image registry.
Plain Text1 >$ helm3 chart push [Public or Virtual Private Cloud Endpoint]/[Namespace]/[Image Registry Version Name]:[Version No.] -
Download the specified tagged version from the instance image registry.
Plain Text1 >$ helm3 chart save ccr-chart-demo [Public or Virtual Private Cloud Endpoint]/[Namespace]/[Image Registry Version Name]:[Version No.] -
Export the tagged version to a local directory to view the chart directory.
Plain Text1 >$ helm3 chart export [Public or Virtual Private Cloud Endpoint]/[Namespace]/[Image Registry Version Name]:[Version No.] -d .
Use the Helm Chart registry to host charts
The steps below explain how to push and pull charts using Helm2.
- Download the appropriate Helm version from the official website.
Note
Ensure the client is v2 version. You can view the client version by executing the command
helm version -c.
-
Install the Helm Push plugin.
Plain Text1>$ helm plugin install https://github.com/chartmuseum/helm-push
Note
If the Helm Push plugin is v0.10.0 or higher version, push chart by
helm cm-pushcommand; If it is v0.10.0 or lower version, push chart byhelm pushcommand.
-
Set up local registry mapping (assign a local registry name mapped to an online chart registry within a specific namespace).
Plain Text1> $ helm repo add [Local Registry Name] https://[Public or Virtual Private Cloud Endpoint]/chartrepo/[Namespace] -- username [Username in Enterprise Edition Instance Access Credential]
Enter the login password specified in the access credentials, either fixed or temporary.
-
Create a chart named "ccr-chart-demo.\
Plain Text1 >$ helm create ccr-chart-demo -
Push the chart directory to the local registry.
Plain Text1 >$ helm cm-push [Chart Name] [Local Registry Name] -
Push the compressed chart package to the local registry (optional).
Plain Text1 >$ helm cm-push [Chart Name]-[Chart Version].tgz [Local Registry Name] -
Update the local chart index from the online chart registry.
Plain Text1 >$ helm repo update -
Download the chart.
Plain Text1 >$ helm fetch [Local Registry Name]/[Chart Name] -- version [Chart Version] -
Install the chart directly (optional).
Plain Text1 >$ helm install -f values.yaml [Local Registry Name]/[Chart Name] -- version [Chart Version]
