Skip to content

Latest commit

 

History

History
95 lines (76 loc) · 2.8 KB

File metadata and controls

95 lines (76 loc) · 2.8 KB

FishBase Dashboard Config 저장소 구조 가이드

별도 config 저장소(fishbase-dashboard-config)를 생성할 때 필요한 구조입니다.

저장소 구조

fishbase-dashboard-config/
├── charts/
│   └── fishbase/           # 현재 프로젝트의 config/charts/fishbase 내용을 복사
│       ├── Chart.yaml
│       ├── values.yaml
│       ├── values-dev.yaml
│       ├── values-prod.yaml
│       └── templates/
│           ├── deployment.yaml
│           ├── service.yaml
│           ├── ingress.yaml
│           ├── hpa.yaml
│           ├── configmap.yaml
│           ├── secret-store.yaml
│           ├── external-secret.yaml
│           └── postgres-cluster.yaml
└── README.md

설정 단계

1. 새 저장소 생성

# GitHub에서 fishbase-dashboard-config 저장소 생성 후
git clone https://github.com/infograb/fishbase-dashboard-config
cd fishbase-dashboard-config

2. 차트 복사

# 현재 프로젝트에서 차트 복사
cp -r /path/to/FishBase-Dashboard/config/charts .

3. 초기 커밋

git add .
git commit -m "Initial Helm charts for FishBase Dashboard"
git push origin main

ArgoCD Application 생성

ArgoCD Application은 클러스터 관리자가 ArgoCD UI나 CLI를 통해 생성해야 합니다:

# 개발 환경 Application 생성
argocd app create fishbase-dev \
  --repo https://github.com/infograb/fishbase-dashboard-config \
  --path charts/fishbase \
  --dest-namespace fishbase-dev \
  --dest-server https://kubernetes.default.svc \
  --values values-dev.yaml \
  --sync-policy automated \
  --self-heal

# 운영 환경 Application 생성
argocd app create fishbase-prod \
  --repo https://github.com/infograb/fishbase-dashboard-config \
  --path charts/fishbase \
  --dest-namespace fishbase-prod \
  --dest-server https://kubernetes.default.svc \
  --values values-prod.yaml \
  --sync-policy automated \
  --self-heal

이미지 업데이트 워크플로우

  1. 애플리케이션 코드 변경 시:

    • FishBase-Dashboard 저장소에 푸시
    • GitHub Actions가 자동으로 이미지 빌드 및 푸시
    • ArgoCD Image Updater가 새 이미지 감지
  2. 배포 설정 변경 시:

    • fishbase-dashboard-config 저장소에서 Helm 차트 수정
    • 커밋 및 푸시
    • ArgoCD가 자동으로 변경 감지 및 동기화

주의사항

  • ArgoCD Application은 클러스터 관리 레벨에서 별도로 관리
  • Helm 차트는 별도 저장소(fishbase-dashboard-config)의 charts/ 디렉토리에서 관리
  • GitHub Actions는 config 저장소의 image tag를 자동으로 업데이트
  • ArgoCD Image Updater 설정은 클러스터 관리자가 Application 생성 시 추가해야 함