Building a Local Production-Ready GitOps Architecture with k3d, ArgoCD, and Kustomize

Nowadays, there’s common practice to divide the environment of our application into production and staging. This practice intended to create a safe environment for testing the application before we deploy the application to production and then used by the real user.
So, the engineer need to be able deploy the application into these different environment separately. So, we need to do practice for this purpose. But if we trying to do this on a cloud provider like AWS or GCP, it’s a sure thing that the cost will drain your wallet.
In this post, I will share a cost-effective solution for this problem. We will deploy a enterprise-grade Hub-and-Spoke GitOps environment inside a single local Virtual Machine. And it will completely for free.
This time, we will use Kubernetes as our main orchestrator for the application. We will use k3d to emulate the Kubernetes, ArgoCD as the CD (Continous Deployment) tool and GitHub as our project repository.



