Supported Registry Types
HTTP Registries
Traditional Helm repositories that serve an
index.yaml file over HTTP/HTTPS.OCI Registries
Container registries that support Helm charts stored as OCI artifacts.
HTTP Registry Integration
HTTP registries are traditional Helm repositories that serve charts via HTTP. They use anindex.yaml file to list available charts and versions.
How It Works
- Index Sync: Ankra fetches the
index.yamlfrom your registry URL - ETag Optimization: Uses HTTP headers to skip syncs when the index hasn’t changed
- Chart Download: New chart versions are downloaded and cached
- Metadata Extraction: README, values.yaml, and JSON schema are extracted for the UI
Supported Providers
| Provider | URL Format | Notes |
|---|---|---|
| ChartMuseum | https://charts.example.com | Self-hosted chart repository |
| Harbor | https://harbor.example.com/chartrepo/PROJECT | Requires chartrepo path |
| Nexus | https://nexus.example.com/repository/helm-hosted/ | Hosted repository type |
| JFrog Artifactory | https://artifactory.example.com/artifactory/helm-local | Local or virtual repo |
| AWS S3 | https://bucket.s3.amazonaws.com/charts | With static website hosting |
Adding an HTTP Registry
1
Navigate to Repositories
Go to Charts → Repositories and click Add.
2
Enter Registry URL
Enter your registry URL, e.g.,
https://charts.example.com3
Select Credential
If authentication is required, select a credential from the dropdown.
4
Save
Click Add to connect the registry.
OCI Registry Integration
OCI registries store Helm charts as container images using the OCI specification. This is the modern approach supported by Helm 3.8+.How It Works
- Manifest Fetch: Ankra reads the OCI manifest to discover chart tags
- Layer Download: Chart layers are downloaded from the registry
- Artifact Extraction: The Helm chart is extracted from OCI layers
- Version Tracking: Each tag is tracked as a chart version
Supported Providers
| Provider | URL Format | Authentication |
|---|---|---|
| GitHub Container Registry | oci://ghcr.io/ORG/charts | Personal Access Token |
| Google Artifact Registry | oci://REGION-docker.pkg.dev/PROJECT/REPO | Service Account JSON |
| Amazon ECR | oci://ACCOUNT.dkr.ecr.REGION.amazonaws.com | AWS credentials |
| Azure Container Registry | oci://REGISTRY.azurecr.io/charts | Service Principal |
| Docker Hub | oci://registry-1.docker.io/ORG | Access Token |
| Harbor | oci://harbor.example.com/PROJECT | Username/Password |
Adding an OCI Registry
1
Navigate to Repositories
Go to Charts → Repositories and click Add.
2
Enter OCI Registry URL
Enter your registry URL with the
oci:// prefix, e.g., oci://ghcr.io/your-org/charts3
Select Credential
If authentication is required, select a credential from the dropdown.
4
Save
Click Add to connect the registry.
OCI URLs must start with
oci://. Ankra automatically detects the registry type based on the URL prefix.Sync Configuration
Default Sync Interval
Registries sync automatically every 2 minutes by default.Custom Sync Intervals
You can configure sync intervals per registry:- Minimum: 10 seconds
- Maximum: 24 hours (86400 seconds)
- Disabled: Set to 0 to disable automatic sync
Sync Behavior
1
Check for Updates
Ankra checks if the registry index has changed using ETag or Last-Modified headers.
2
Detect New Versions
New chart versions are identified by comparing against previously synced versions.
3
Download Charts
New versions are downloaded and stored. Metadata is extracted for browsing.
4
Retry on Failure
Failed downloads are automatically retried with exponential backoff.
Authentication
Most registries require authentication. See Credentials Integration for setting up:- Username/password authentication
- Token-based authentication
- Service account credentials
Troubleshooting
HTTP Registry Issues
| Issue | Cause | Solution |
|---|---|---|
| 404 Not Found | Wrong URL path | Verify the URL points to the repository root |
| 401 Unauthorized | Missing credentials | Add registry credential |
| Timeout | Network/firewall | Check connectivity to the registry |
| Empty chart list | Invalid index.yaml | Verify the registry is properly configured |
OCI Registry Issues
| Issue | Cause | Solution |
|---|---|---|
| Invalid reference | Missing oci:// prefix | Add oci:// to the URL |
| Manifest unknown | Chart doesn’t exist | Check the repository path |
| Unauthorized | Token expired | Refresh or recreate credentials |
| Tag not found | Version doesn’t exist | Verify chart versions in the registry |