Installing Argo CD

Installing Argo CD in the BookNest Cluster

Argo CD 126 installs from one pinned manifest: three CRDs, the application controller (the reconciliation loop), the repo server that clones and renders repositories, the API and UI server, Redis 2,763 , Dex for single sign-on, and the ApplicationSet and notifications controllers:

Installing Argo CD 3.5.3 and opening its UI on port 33808Shell
kubectl create namespace argocd >/dev/null
kubectl apply -n argocd --server-side --force-conflicts -f \
  https://raw.githubusercontent.com/argoproj/argo-cd/v3.5.3/manifests/install.yaml >/dev/null
kubectl -n argocd wait --for=condition=Available deployment --all --timeout=5m >/dev/null
kubectl -n argocd rollout status statefulset/argocd-application-controller >/dev/null
kubectl get crd -o name | grep argoproj
kubectl -n argocd get pods -o custom-columns=POD:.metadata.name,STATUS:.status.phase
kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath='{.data.password}' \
  | base64 -d > ~/argocd-admin.txt
(kubectl -n argocd port-forward svc/argocd-server 33808:443 >/dev/null 2>&1 &)
Output
customresourcedefinition.apiextensions.k8s.io/applications.argoproj.io
customresourcedefinition.apiextensions.k8s.io/applicationsets.argoproj.io
customresourcedefinition.apiextensions.k8s.io/appprojects.argoproj.io
POD                                                 STATUS
argocd-application-controller-0                     Running
argocd-applicationset-controller-7fb7c76f76-mn4mm   Running
argocd-dex-server-7d54f7f9d6-jsw6m                  Running
argocd-notifications-controller-7fcfd67447-mgdfj    Running
argocd-redis-6bf744486c-lxt2b                       Running
argocd-repo-server-57b98df6c6-hp94c                 Running
argocd-server-665b8b6947-p2vzg                      Running

Log in at https://localhost:33808 (self-signed) as admin, then change the password and delete the argocd-initial-admin-secret. Production needs a real certificate, SSO and the HA manifest.