TMAX data.m ํ๊ฒฝ์ค์ ํ์์ ์ด์ ๋์๋ณด๋ ๋ชจ๋
ธ๋ ํฌ.
| ๋๋ ํ ๋ฆฌ | ์ญํ | ์คํ |
|---|---|---|
tpops-backend/ |
ํ์ + REST API | Spring Boot 3.5 (Java 17) ยท MySQL (Flyway) ยท Elasticsearch |
tpops-frontend/ |
๋์๋ณด๋ UI | React 18 ยท Vite ยท TypeScript ยท Tailwind ยท TanStack Query/Table |
k8s/ |
๋ฐฐํฌ ๋งค๋ํ์คํธ | Kustomize (base + overlays) |
cd tpops-backend
cp .env.example .env # ES_URI / ES_API_KEY ์ฑ์ฐ๊ธฐ
./gradlew bootRun๊ธฐ๋ณธ๊ฐ: localhost:3306 MySQL (tpops/tpops/tpops), 8080 ํฌํธ. ๋ชจ๋ ๊ฐ์ ํ๊ฒฝ๋ณ์๋ก override ๊ฐ๋ฅ โ application.yaml ์ฐธ์กฐ.
cd tpops-frontend
npm ci
npm run dev# ํ๊ฒฝ๋ณ overlay ์ ์ฉ
kubectl apply -k k8s/overlays/fodenbase/ ๋ ํ๊ฒฝ ๋ฌด๊ดํ ๊ณตํต ๋งค๋ํ์คํธ, overlays/<env>/ ๋ ํ๊ฒฝ๋ณ ํจ์น/ConfigMap/Secret/Ingress.
GitOps + Jenkins ํ์ดํ๋ผ์ธ. ๋น๋ โ Harbor push โ manifests ๋ ํฌ์ deploy.yaml ์ด๋ฏธ์ง ํ๊ทธ ์๋ ๊ฐฑ์ โ ArgoCD๊ฐ ํด๋ฌ์คํฐ์ sync.
- ์ค์ ์ํฌ๋ฆฟ(API key, DB password ๋ฑ)์ ์ ๋ ์ปค๋ฐํ์ง ์์. ๋ชจ๋ ์์ ํ์ผ์ placeholder.
tpops-backend/.env,k8s/**/secret.yaml์ ์ค๊ฐ์ ์ด์ ํ๊ฒฝ์์ ๋ณ๋ ์ฃผ์ .- ๋ณธ ๋ ํฌ์ ๋๋ฉ์ธ/์ด๋ฏธ์ง URL์ ๋ชจ๋ ๊ฐ๋ช
(
*.example.com).