Step-by-Step Guide: Deploying Applications with Helm Charts and Argo CD

Featured Image
Helm is a powerful package manager for Kubernetes that simplifies application deployment by bundling Kubernetes resources into reusable charts. Argo CD, a declarative GitOps tool, enhances Helm by automating deployments from Git repositories. Below is a detailed guide with practical commands and steps.

You Should Know:

1. Install Helm

To get started, install Helm on your system:

 Install Helm on Linux 
curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3 
chmod 700 get_helm.sh 
./get_helm.sh

Verify installation 
helm version 

2. Create a Helm Chart

Generate a new Helm chart for your application:

helm create myapp 
cd myapp 

3. Customize `values.yaml`

Modify the default values in `values.yaml` to configure your app:

replicaCount: 3 
image: 
repository: nginx 
tag: latest 
service: 
type: ClusterIP 
port: 80 

4. Deploy Using Helm

Install the chart into your Kubernetes cluster:

helm install myapp ./myapp 

5. Upgrade a Release

To update your deployment:

helm upgrade myapp ./myapp 

6. Install Argo CD

Deploy Argo CD in your Kubernetes cluster:

kubectl create namespace argocd 
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml 

7. Access Argo CD Dashboard

Port-forward to access the UI:

kubectl port-forward svc/argocd-server -n argocd 8080:443 

Login using the default credentials (username: admin, password: retrieve with):

kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d 

8. Deploy Helm Chart via Argo CD

Create an `Application` YAML (`myapp-argo.yaml`):

apiVersion: argoproj.io/v1alpha1 
kind: Application 
metadata: 
name: myapp 
namespace: argocd 
spec: 
destination: 
server: https://kubernetes.default.svc 
project: default 
source: 
chart: myapp 
repoURL: https://charts.myorg.com 
targetRevision: 0.1.0 
helm: 
values: | 
replicaCount: 3 

Apply the configuration:

kubectl apply -f myapp-argo.yaml 

9. Verify Deployment

Check Helm releases:

helm list 

Check Argo CD sync status:

argocd app get myapp 

What Undercode Say

Helm and Argo CD streamline Kubernetes deployments by combining templating and GitOps automation. Key takeaways:
– Helm reduces complexity with reusable charts.
– Argo CD ensures Git-based declarative deployments.
– Together, they enhance CI/CD pipelines for cloud-native apps.

For further learning, explore:

Expected Output:

A fully automated Kubernetes deployment pipeline using Helm and Argo CD, ensuring version-controlled, scalable, and reproducible application releases.

Prediction

The adoption of Helm and Argo CD will grow as Kubernetes ecosystems demand more automation and GitOps-driven workflows, reducing manual intervention in cloud deployments.

References:

Reported By: Darryl Ruggles – Hackers Feeds
Extra Hub: Undercode MoN
Basic Verification: Pass ✅

Join Our Cyber World:

💬 Whatsapp | 💬 Telegram