Install ArgoCD on Minikube on an Ubuntu
Step 1:Install Minikube
minikube is local Kubernetes, focusing on making it easy to learn and develop for Kubernetes.
All you need is Docker (or similarly compatible) container or a Virtual Machine environment
Install Docker
sudo apt-get update
sudo apt-get install docker.io -y
sudo usermod -aG docker $USER #my case is ubuntu
systemctl restart docker
To download latest minikube setup refer minikube official download page
curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64
Install Minikube on Ubuntu
sudo install minikube-linux-amd64 /usr/local/bin/minikube && rm minikube-linux-amd64
To check minikube version on Ubuntu
minikube version
Output:
Step 2:Install kubectl
The Kubernetes command-line tool, kubectl, allows you to run commands against Kubernetes clusters. You can use kubectl to deploy applications, inspect and manage cluster resources, and view logs
Download kubectl binary with curl on Ubuntu using below command
curl -LO "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
Install kubectl
sudo install -o root -g root -m 0755 kubectl /usr/local/bin/kubectl
To check kubectl version on Ubuntu
kubectl version --client --output=yaml
Output:
Step 3:Start MiniKube on Ubuntu
Start the minikube Kubernetes cluster on Ubuntu
minikube start
output:
To Check the status of Minikube
minikube status
Output:
minikube
type: Control Plane
host: Running
kubelet: Running
apiserver: Running
kubeconfig: Configured
Step 4:Install ArgoCD on Minikube
Argo CD is a declarative, GitOps continuous delivery tool for Kubernetes.
Just like other Kubernetes tools, ArgoCD requires a namespace with its name. Therefore, we will create a namespace for argocd.
kubectl create ns argocd
ArgoCD can be installed using its manifests. First, you’ll need to download these manifests and apply them to your Minikube cluster.
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
This will create the necessary resources for ArgoCD within the argocd
namespace.
Let’s verify the installation by getting all the objects in the ArgoCD namespace.
kubectl get all -n argocd
Output:
Step 5:Access ArgoCD UI on Browser
By default, the ArgoCD server is not exposed outside the cluster. You can expose it using port-forwarding to access the ArgoCD UI.
kubectl port-forward svc/argocd-server -n argocd --address 0.0.0.0 8080:443
The ArgoCD UI will be available at http://localhost/IP:8080
. Access it through your web browser.
Now we can go to a browser and open instance_ip:8080
You will see a privacy warning. Just ignore the warning, click on Advanced and then hit on Proceed to localhost (unsafe)
to continue to the GUI interface. (Your browser setting may present a different option to continue).
Get the initial password for the admin
user to log in
kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d
Use the generated password to log in as the admin
user in the ArgoCD UI.
Successfully installed ArgoCD on minikube.