> ## Documentation Index
> Fetch the complete documentation index at: https://docs.hyko.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Helm

This guide provides step-by-step instructions for installing the Hyko Helm chart in your enterprise Kubernetes cluster.

## Prerequisites

Before beginning the installation, ensure you have the following:

* A running Kubernetes cluster (v1.19 or later recommended)
* `kubectl` configured to communicate with your cluster
* `helm` v3.x installed on your local machine
* Administrative access to your Kubernetes cluster

## Step 1: Request Registry Access

The Hyko v2 Helm chart is hosted in a private OCI registry. Before you can proceed with the installation, you must request access from the Hyko team.

Contact the Hyko team at **[contact@big-mama.io](mailto:contact@big-mama.io)** to request access to the Docker registry. Provide your Docker Hub username or the email associated with your Docker account. Once approved, you will be granted access to pull the chart and container images.

## Step 2: Authenticate with Docker Registry

After receiving access approval, authenticate your local Docker client with the registry:

```bash theme={null}
docker login registry-1.docker.io
```

Enter your Docker Hub credentials when prompted.

Verify your authentication by attempting to log in with Helm:

```bash theme={null}
helm registry login registry-1.docker.io
```

## Step 3: Create Image Pull Secret

Create a Kubernetes secret to allow the cluster to pull images from the private registry:

```bash theme={null}
  kubectl create ns hyko-v2 && kubectl create secret generic regcred \
    --from-file=.dockerconfigjson="$HOME"/.docker/config.json \
    --type=kubernetes.io/dockerconfigjson -n hyko-v2
```

## Step 4: Create Application Secrets

Create a Kubernetes secret named `web-secrets` containing your application's sensitive configuration, for more detailed information about environment variables check out [Environment Variables](/deployment/environment-variables) docs

To create the `web-secrets` secret with these environment variables:

Create a `.env` file with all variables:

```
AUTH_SECRET=your-auth-secret
AUTH_URL=https://your-domain.com
POSTGRES_PASSWORD=your-postgres-password
# ... add all other variables
```

Then create the secret:

```bash theme={null}
kubectl create secret generic web-secrets \
  --from-env-file=.env \
  --namespace=hyko-v2
```

## Step 5: Prepare Values File

Create a `values.yaml` file with your environment-specific configuration. You can use the example values provided by the Hyko team as a starting point and customize them according to your infrastructure requirements.

**Important considerations when preparing your values file:**

* Configure ingress settings based on your ingress controller (if you're using one)
* Adjust resource requests and limits based on your cluster capacity
* Set the appropriate storage class available in your cluster
* Configure TLS/SSL settings based on your certificate management approach
* Update domain names and email addresses as needed

## Step 6: Install the Helm Chart

Install the Hyko v2 chart using the following command:

```bash theme={null}
helm install hyko-v2 oci://registry-1.docker.io/bigmamatech/hyko-v2 \
  --namespace hyko-v2 \
  --values values.yaml
```

This command will deploy the application to your cluster using the configuration specified in your `values.yaml` file.

## Verify Installation

Check the deployment status:

```bash theme={null}
kubectl get pods -n hyko-v2
```

All pods should reach a `Running` state. This may take a few minutes as images are pulled and containers start.

View the application logs:

```bash theme={null}
kubectl logs -n hyko-v2 -l app=web --tail=100
```

\| you can use a based tool like [k9s](https://k9scli.io/)

## Upgrading the Installation

To upgrade an existing installation with new values or a new chart version:

```bash theme={null}
helm upgrade hyko-v2 oci://registry-1.docker.io/bigmamatech/hyko-v2 \
  --namespace hyko-v2 \
  --values values.yaml
```

## Uninstalling

To remove the Hyko v2 deployment:

```bash theme={null}
helm uninstall hyko-v2 --namespace hyko-v2
```

## Troubleshooting

### Pods Not Starting

Check pod events for errors:

```bash theme={null}
kubectl describe pod <pod-name> -n hyko-v2
```

Common issues include image pull failures (verify registry access), insufficient resources (check node capacity), or missing secrets (verify secret creation).

### Image Pull Errors

If you encounter image pull errors, verify that:

* Your Docker credentials are correct
* The `regcred` secret was created properly in the correct namespace
* Your Docker account has been granted access to the repository

### Missing Secrets

If pods are failing due to missing secrets, ensure the `web-secrets` secret contains all required keys for your deployment.
