DropVPS Team
Writer: Cooper Reagan
How to Install argocd on Centos 9

Table of Contents
ArgoCD is a declarative GitOps tool that continuously deploys applications to Kubernetes clusters. Setting it up on CentOS Stream 9 is simple if you already have kubectl and a working Kubernetes cluster. Here’s a clean, terminal-based setup.
Step 1: Update the System
Before installing anything, make sure your CentOS 9 packages are up to date:
sudo dnf update -y
Step 2: Install kubectl
If you don’t already have kubectl installed, set it up manually:
sudo dnf install -y curl
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
Confirm installation:
kubectl version --client
Step 3: Create a Namespace for ArgoCD
Separate ArgoCD components into their own namespace for cleaner management:
kubectl create namespace argocd
Step 4: Install ArgoCD Components
Apply the official ArgoCD installation manifest directly from GitHub:
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
This deploys the full ArgoCD stack — API server, repo server, application controller, and related services — into the argocd namespace.
Step 5: Expose the ArgoCD API Server
By default, the ArgoCD API is only accessible inside the cluster.
To access it externally, switch the service type to NodePort:
kubectl patch svc argocd-server -n argocd -p '{"spec": {"type": "NodePort"}}'
Find the assigned port:
kubectl get svc argocd-server -n argocd
You’ll see something like:
argocd-server NodePort 10.96.0.1 <none> 8080:31443/TCP
Your external port is 31443 in this example.
Step 6: Get the Admin Password
ArgoCD creates an admin password automatically. Retrieve it with:
kubectl get secret argocd-initial-admin-secret -n argocd -o jsonpath="{.data.password}" | base64 -d && echo
Step 7: Access the ArgoCD Dashboard
Open your browser and go to:
http://<node-ip>:<node-port>
Login details:
-
Username:
admin -
Password: (from previous step)
Step 8: Install the ArgoCD CLI (Optional)
The CLI makes managing ArgoCD easier from the terminal.
sudo curl -sSL -o /usr/local/bin/argocd https://github.com/argoproj/argo-cd/releases/latest/download/argocd-linux-amd64
sudo chmod +x /usr/local/bin/argocd
Check the version:
argocd version
For production setups, it’s best to expose ArgoCD through an Ingress controller with TLS.
If you already have NGINX Ingress and cert-manager, apply:
kubectl apply -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/ha/install.yaml
Then configure HTTPS with your SSL certificate. After your first login, change the default password and delete the initial admin secret for security:
kubectl delete secret argocd-initial-admin-secret -n argocd