Skip to content

Argo CD

This document describes how to set up a lightweight Kubernetes cluster using k3s and deploy Argo CD for GitOps-based application management.

Requirements

Hardware/network/so requirements

  • Minimum 4GB RAM
  • Minimum 2 CPU cores
  • Minimum 20GB disk (ubuntu + k3s + container images)
  • Internet access to download container images
  • Ubuntu 24.04 LTS

Quick start

Script automation instructions (vm or baremetal)

run the following commands as root inside the machine or vm to deploy the working setup:

git clone https://github.com/uaiso-serious/infra.git
./infra/_setup/k3s/k3s.sh
./infra/_setup/argocd/argocd.sh

Takes about 10 minutes to download container images depending on your internet speed. You can use kubectl or k9s command to check the pod status.

Configure your browser to use a http proxy to access the ingress routes, point it to <your-k3s-ipv4> port 3128.

Easy proxy stuff with FoxyProxy for Chrome or FoxyProxy for Firefox

Open http://argocd.uaiso.lan/ login as admin/Admin123

Enable/Delete applications as needed.

Congratulations, you have a k3s cluster with gitops.


The git repository for argocd is:

http://onedev.uaiso.lan

admin / admin


Integration

The architecture looks like this:

User <-> Onedev <-> ArgoCD <-> K3s

user <-> onedev <-> argocd <-> k3suser <-> onedev <-> argocd <-> k3sUseronedevargocdk3sUseronedevargocdk3sEdit, commit filesargocd reads git repouser triggers syncargocd apply diff to k3s
user <-> onedev <-> argocd <-> k3suser <-> onedev <-> argocd <-> k3sUseronedevargocdk3sUseronedevargocdk3sEdit, commit filesargocd reads git repouser triggers syncargocd apply diff to k3s