使用 Docker Desktop 運行 Argo CD 以及在 Argo CD 內建立 App 偵測 repository 狀態

Prerequisites

開始前,需要先確保有以下的先備知識

Argo CD 介紹

  • 以 GitOps 模式為宗旨的持續部屬 (continuous delivery) 工具
    • 關於 GitOps 可以參考文章 GitOps

Getting Started with Argo CD on Docker Desktop

讓我們一步一步開始吧! 💪

建立 namespace

kubectl create namespace argocd

安裝 Argo CD 的 kubernetes resources

  • 需要安裝的 resources 都寫在 install.yaml 內,利用 kubectl apply 指令進行安裝

    kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
    

確認 Argo CD 的 pod 的運行狀態為 running

  • -n 表示指定 namespace 為 argocd,沒設定就是 default namespace

    kubectl get pod -n argocd
    
  • pod 運行狀態

    argocd 相關的 pod 都已是 running 狀態

取得 Argo CD 初始 admin 的密碼

  • 登入 dashboard 使用

    kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}" | base64 -d; echo
    

將 service argocd-server port forward 到本地

  • 將 service argocd-server 的 port 443 導至本地 port 8000

    kubectl port-forward svc/argocd-server -n argocd 8000:443
    
  • port forward 成功

    port forward 成功

登入 Argo CD dashboard

針對 public git repository 建立一組 application

  • 先 fork 範例 repository - argocd-example-apps

  • 依照官方文件指示步驟進行新增 application

    • Step 1 NEW APP

    • Step 2,填完資訊,按下 CREATE,能在 dashboard 看到 application

      • app name: guestbook
      • project: default
      • sync policy: Manual
      • Repository URL
      • Revision: HEAD
      • Path: guestbook
      • Destination/Cluster: https://kubernetes.default.svc
      • Namespace: default

針對 private git repository 建立一組 application

解除安裝 application

  • 執行 DELETE 按鈕

    DELETE 按鈕

解除安裝 Argo CD

  • ⚠️ 解除安裝 Argo CD 前一定要先解除安裝 application

    kubectl -n argocd delete -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml
    

遇過的問題

參考資料

🍀 最後,若喜歡我的分享,可以免費幫我按讚,是對我最大的鼓勵! ✨ ✨ ✨