Skip to main content
Ryvn provides native support for deploying applications using Helm charts, giving you complete control over your Kubernetes resources while maintaining the simplicity of Ryvn’s deployment workflow. Charts offer integrated release management and rollback capabilities for complex Kubernetes applications.

Prerequisites

Kubernetes Resource Support

Ryvn supports all Kubernetes resource types that can be defined in your Helm chart. This includes commonly used resources like ConfigMaps, Secrets, Persistent Volumes, and Service Accounts, as well as any Custom Resource Definitions (CRDs) your application requires.

Create Your Service

1

Chart Requirements

Your Helm chart should follow these requirements:
  • Use specific chart versions (avoid latest or floating versions)
  • Define proper Kubernetes resources
  • Include valid health check endpoints
  • Use values.yaml for configuration
2

Create Service

Open the Ryvn Dashboard, go to the Services tab, and click Create Service in the top-right corner. Choose Chart as your service type.
3

Configure Chart

Give your service a name and provide your chart details:
  • Repository URL
  • Chart name
  • Registry credentials (if private)
4

Setup GitHub Actions (Optional)

After creating your service, you’ll have the option to set up GitHub Actions for automated deployments. Click Setup GitHub Actions to create a workflow that automatically builds and deploys your Helm chart when you push changes.See GitHub Actions Integration for detailed setup instructions.
We support pulling charts from public repositories, GitHub repositories, and private OCI registries. For other private chart repositories, please contact us.

Private Registry Support

Ryvn supports deploying Helm charts from private OCI registries. To use a private registry:
1

Add Registry Credentials

First, add your registry credentials through Settings in the Ryvn Dashboard:
  1. Navigate to Settings
  2. Select the Registries tab
  3. Click “Add Registry”
  4. Enter your registry name, URL, and authentication credentials
2

Select Registry for Chart

When creating your Helm Chart service:
  1. Select the registry you added from the dropdown
  2. Specify the repository path within the registry where your Helm chart is stored
Ryvn will automatically authenticate with your private registry during deployment and pull the specified Helm chart.

Public Charts

Public charts allow you to deploy community-maintained or vendor-provided Helm charts without hosting your own chart repository.
1

Create Helm Chart Service

  1. Navigate to Services and click Create Service
  2. Select Helm Chart as the service type
  3. Select Deploy from Public Chart
  4. Provide the required information: Repository URL: The Helm repository URL (e.g., https://charts.bitnami.com/bitnami) Chart Name: The name of the chart in the repository (e.g., postgresql)
2

Create Service Releases

  1. Go to your Helm Chart service and click Create Release
  2. Version must match exactly what the chart maintainer published For example, if the chart has versions 12.1.2, 12.1.1, 12.1.0, you must use these exact versions

Deploy to Environment

1

Navigate to Environment

Go to the Environments tab in the Ryvn Dashboard and select the environment where you want to deploy your Helm chart.
2

Start Installation

Click Add Service and select your Helm Chart service from the list.
3

Configure Values

Configure your chart’s values for this installation
Values specified here will override the defaults in your chart’s values.yaml.
4

Set Environment Variables

Define any environment variables needed for your deployment
5

Deploy

Click Create Installation. Ryvn will begin pulling your chart and creating the necessary resources in your environment.
Once deployed, you can monitor your installation’s status directly from the dashboard. View the Helm release status, check resource health, and access logs to ensure everything is running as expected.

Custom Domains

To configure custom domains, ingress controllers, and TLS certificates for your Helm charts, see the Custom Domains documentation. This covers:
  • Configuring ingress for public and internal services
  • Using Ryvn’s built-in NGINX controllers (external-nginx and internal-nginx)
  • Automatic TLS certificate management
  • DNS configuration for custom domains

Versioning

Helm chart versions in Ryvn directly correspond to service release versions. When you create a release for your Helm Chart service, the release version must match an existing chart version in your repository. For GitHub-hosted charts:
  • Chart versions are defined in Chart.yaml (version field)
  • Release versions should match the chart version you want to deploy
  • Ryvn will look for the chart at the specified version in your repository
For public chart repositories:
  • Chart versions are managed by the chart maintainer
  • You must use versions that actually exist in the public repository
  • Check the chart repository’s available versions before creating releases

Automated Deployments with GitHub Actions

For Helm Chart services, you can set up automated deployments using GitHub Actions. This integration enables:
  • Automatic builds and deployments when you push changes to your chart
  • Version management through Git tags
  • Synchronized releases between GitHub and Ryvn
  • Controlled deployments through release channels
You can set up GitHub Actions:
  • During service creation (recommended)
  • Later through the service’s menu options
For complete setup instructions and workflow details, see our GitHub Actions Integration guide.

Release Management

Ryvn integrates with your existing release workflow:

Troubleshooting

  • Verify the exact version exists in the chart repository
  • Check for typos in version numbers
  • Ensure the repository URL is correct and accessible
  • Confirm the repository URL is publicly accessible
  • Check if the chart name is spelled correctly
  • Verify the repository supports the chart version you specified