---
abstract: Deploy ArgoCD to handle continuous delivery.
author: Xander Harris
blogpost: true
category: Workloads
date: 2025-09-01
tags: argo, workloads
title: ArgoCD Deployment to Kubernetes
---

```{note}
The ArgoCD documentation suggests that kustomize is their preferred method
for installation, but given that the author prefers Helm, we'll go ahead
and use that.
```

## Prerequisites

Before {term}`ArgoCD` will run on your cluster you'll need to be able to dynamically
provision storage, covered in the post on how to install the {term}`LVM`
{term}`CSI` driver,
as well as an ingress controller, covered in the post on how to install the
{term}`NGINX` ingress controller.

## Installation

Getting {term}`ArgoCD` is relatively straightforward, at least for simple setups like
the one we're using here.

1. Configure your chart values.

   ```{literalinclude} 2025-09-01.argo.values.yaml
   :caption: a basic values file
   :language: yaml
   ```
2. Create a namespace.

   ```{code-block} shell
   :caption: make a new namespace

   kubectl create ns argo
   ```
3. Use Helm to deploy the chart with your specified values.

   ```{code-block} shell
   :caption: install with helm

   helm install
   ```

   The
   [official documentation](https://github.com/argoproj/argo-helm/blob/main/charts/argo-cd/README.md)
   may be helpful here.

