mirror of
https://github.com/cna-bootcamp/phonebill.git
synced 2025-12-06 08:06:24 +00:00
- Kustomize 기반 환경별 배포 구조 구성 * Base: 공통 매니페스트 (29개 파일) * Overlays: dev/staging/prod 환경별 설정 (39개 파일) * 환경별 리소스 및 보안 정책 차별화 - Jenkins 파이프라인 구현 * JDK 21, Podman, Kustomize 통합 * SonarQube 품질 분석 및 Quality Gate * 환경별 이미지 태그 및 배포 자동화 * Pod 자동 정리로 리소스 최적화 - 운영 도구 및 스크립트 * 수동 배포 스크립트 (deploy.sh) * 리소스 검증 스크립트 (validate-resources.sh) * 환경별 설정 파일 관리 - 완전한 가이드 문서 * Jenkins 설정 및 Credentials 등록 방법 * SonarQube 연동 및 Quality Gate 설정 * 배포 실행 및 트러블슈팅 가이드 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
57 lines
1.3 KiB
YAML
57 lines
1.3 KiB
YAML
apiVersion: apps/v1
|
|
kind: Deployment
|
|
metadata:
|
|
name: kos-mock
|
|
spec:
|
|
replicas: 1
|
|
selector:
|
|
matchLabels:
|
|
app: kos-mock
|
|
template:
|
|
metadata:
|
|
labels:
|
|
app: kos-mock
|
|
spec:
|
|
imagePullSecrets:
|
|
- name: phonebill
|
|
containers:
|
|
- name: kos-mock
|
|
image: acrdigitalgarage01.azurecr.io/phonebill/kos-mock:latest
|
|
imagePullPolicy: Always
|
|
ports:
|
|
- containerPort: 8084
|
|
envFrom:
|
|
- configMapRef:
|
|
name: cm-common
|
|
- configMapRef:
|
|
name: cm-kos-mock
|
|
- secretRef:
|
|
name: secret-common
|
|
resources:
|
|
requests:
|
|
cpu: 256m
|
|
memory: 256Mi
|
|
limits:
|
|
cpu: 1024m
|
|
memory: 1024Mi
|
|
startupProbe:
|
|
httpGet:
|
|
path: /actuator/health
|
|
port: 8084
|
|
initialDelaySeconds: 30
|
|
periodSeconds: 10
|
|
failureThreshold: 6
|
|
readinessProbe:
|
|
httpGet:
|
|
path: /actuator/health/readiness
|
|
port: 8084
|
|
initialDelaySeconds: 10
|
|
periodSeconds: 5
|
|
failureThreshold: 3
|
|
livenessProbe:
|
|
httpGet:
|
|
path: /actuator/health/liveness
|
|
port: 8084
|
|
initialDelaySeconds: 30
|
|
periodSeconds: 10
|
|
failureThreshold: 3 |