English | 中文
helm-oss is a Helm plugin that provides Alibaba Cloud OSS protocol support.
Based on helm-s3 - This project is a fork of helm-s3, modified to support Alibaba Cloud OSS instead of AWS S3.
This allows you to have private or public Helm chart repositories hosted on Alibaba Cloud OSS.
The plugin supports Helm v3.
If you find this project useful, you can buy me a coffee!
| WeChat Pay | Alipay | PayPal |
|---|---|---|
![]() |
![]() |
![]() |
Please add a remark helm-oss when transferring, thank you for your support!
Install the latest version:
helm plugin install https://github.com/Timozer/helm-oss.gitInstall a specific release version:
helm plugin install https://github.com/Timozer/helm-oss.git --version 0.1.0To use the plugin, you do not need any special dependencies. The installer will download versioned release with prebuilt binary from GitHub releases.
The plugin is also distributed as Docker images. You can pull the image from Docker Hub:
docker pull zhenyuwang94/helm-oss:latestOr you can build the image yourself:
docker build -t helm-oss:latest .To publish charts to buckets and to fetch from private buckets, you need to provide valid Alibaba Cloud OSS credentials.
You can configure credentials using environment variables:
export HELM_OSS_ACCESS_KEY_ID="your-access-key-id"
export HELM_OSS_ACCESS_KEY_SECRET="your-access-key-secret"
export HELM_OSS_REGION="oss-cn-hangzhou"
export HELM_OSS_ENDPOINT="https://oss-cn-hangzhou.aliyuncs.com"Optionally, you can also set:
export HELM_OSS_SESSION_TOKEN="your-session-token" # For STSTo minimize security issues, remember to configure your RAM user policies properly. As an example, a setup can provide only read access for users, and write access for a CI that builds and pushes charts to your repository.
You can also configure the plugin using a YAML file located at ~/.config/helm_plugin_oss.yaml.
Example ~/.config/helm_plugin_oss.yaml:
endpoint: "https://oss-cn-hangzhou.aliyuncs.com"
region: "oss-cn-hangzhou"
accessKeyID: "your-access-key-id"
accessKeySecret: "your-access-key-secret"
# sessionToken: "your-session-token" # Optional, for STSNote: Environment variables take precedence over the configuration file.
Initialize a new chart repository:
helm oss init oss://my-bucket/chartsThis command generates an empty index.yaml and uploads it to the OSS bucket under /charts key.
To push a chart to the repository:
helm oss push ./mychart-0.1.0.tgz oss://my-bucket/chartsIf you want to replace an existing chart, use the --force flag:
helm oss push --force ./mychart-0.1.0.tgz oss://my-bucket/chartsTo delete a specific chart version from the repository:
helm oss delete mychart --version 0.1.0 oss://my-bucket/chartsTo download a chart from the repository:
helm pull oss://my-bucket/charts/mychart-0.1.0.tgzIf your repository somehow became inconsistent or broken, you can use reindex to rebuild the index:
helm oss reindex oss://my-bucket/chartsThis command will rebuild the index file from scratch.
helm plugin uninstall ossThe plugin uses relative URLs to support both direct OSS access and HTTP-based access (e.g., via CDN):
entries:
mychart:
- urls:
- mychart-0.1.0.tgzThis allows you to:
- Access charts directly via OSS plugin:
helm pull oss://my-bucket/charts/mychart - Access charts via HTTP/CDN:
helm pull https://my-cdn.com/charts/mychart
You can enable public read access to your OSS bucket and serve charts via HTTP or CDN:
- Set bucket ACL to public-read
- Configure CDN (optional)
- Add the HTTP repository to Helm:
helm repo add my-charts https://my-bucket.oss-cn-hangzhou.aliyuncs.com/charts
# or with CDN
helm repo add my-charts https://my-cdn.com/charts- Use charts as usual:
helm search repo my-charts
helm install myrelease my-charts/mychartThis project is based on helm-s3 by Igor Zibarev. We are deeply grateful for their excellent work that made this project possible.
Key differences from helm-s3:
- Uses Alibaba Cloud OSS SDK v2 instead of AWS S3 SDK
- Supports OSS-specific features and authentication
- Optimized for Alibaba Cloud infrastructure
Contributions are welcome! Please feel free to submit a Pull Request.
MIT License - see LICENSE file for details.
This project includes code from helm-s3, which is also licensed under the MIT License.
Original work: Copyright (c) 2017 Igor Zibarev (helm-s3)
Modified work: Copyright (c) 2026 Timozer (helm-oss)


