values.yaml を追加
This commit is contained in:
123
values.yaml
Normal file
123
values.yaml
Normal file
@@ -0,0 +1,123 @@
|
|||||||
|
# リダイレクト設定
|
||||||
|
redirect:
|
||||||
|
# リダイレクトモード: "path-preserve" | "root-only" | "custom"
|
||||||
|
# path-preserve: パスを維持したまま転送 (例: /page -> https://new-domain.com/page)
|
||||||
|
# root-only: パスを無視して指定URLに転送 (例: /any/path -> https://new-domain.com)
|
||||||
|
# custom: 個別パスごとに転送先を指定
|
||||||
|
mode: "path-preserve"
|
||||||
|
|
||||||
|
# HTTPステータスコード: 301 (永久) | 302 (一時)
|
||||||
|
statusCode: 301
|
||||||
|
|
||||||
|
# path-preserve / root-only モード用の転送先ドメイン
|
||||||
|
targetDomain: "https://example.com"
|
||||||
|
|
||||||
|
# custom モード用の個別パス設定
|
||||||
|
customPaths:
|
||||||
|
# パスごとの転送先を指定
|
||||||
|
# 例:
|
||||||
|
# - path: "/old-page"
|
||||||
|
# target: "https://new-domain.com/new-page"
|
||||||
|
# - path: "/products"
|
||||||
|
# target: "https://shop.example.com/products"
|
||||||
|
# - path: "/blog/*"
|
||||||
|
# target: "https://blog.example.com"
|
||||||
|
[]
|
||||||
|
|
||||||
|
# customモード用のフォールバック設定
|
||||||
|
# 設定にないパスへのアクセス時の転送先
|
||||||
|
fallbackTarget: "https://example.com"
|
||||||
|
|
||||||
|
# Ingress設定
|
||||||
|
ingress:
|
||||||
|
enabled: true
|
||||||
|
className: "nginx"
|
||||||
|
annotations:
|
||||||
|
cert-manager.io/cluster-issuer: "letsencrypt-prod"
|
||||||
|
nginx.ingress.kubernetes.io/ssl-redirect: "true"
|
||||||
|
hosts:
|
||||||
|
- host: old-domain.example.com
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: Prefix
|
||||||
|
tls:
|
||||||
|
- secretName: nginx-redirect-tls
|
||||||
|
hosts:
|
||||||
|
- old-domain.example.com
|
||||||
|
|
||||||
|
# Deployment設定
|
||||||
|
replicaCount: 2
|
||||||
|
|
||||||
|
image:
|
||||||
|
repository: nginx
|
||||||
|
tag: "1.25.3-alpine"
|
||||||
|
pullPolicy: IfNotPresent
|
||||||
|
|
||||||
|
# セキュリティコンテキスト
|
||||||
|
securityContext:
|
||||||
|
runAsNonRoot: true
|
||||||
|
runAsUser: 101
|
||||||
|
runAsGroup: 101
|
||||||
|
fsGroup: 101
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- ALL
|
||||||
|
readOnlyRootFilesystem: true
|
||||||
|
seccompProfile:
|
||||||
|
type: RuntimeDefault
|
||||||
|
|
||||||
|
# リソース制限
|
||||||
|
resources:
|
||||||
|
limits:
|
||||||
|
cpu: 100m
|
||||||
|
memory: 128Mi
|
||||||
|
requests:
|
||||||
|
cpu: 50m
|
||||||
|
memory: 64Mi
|
||||||
|
|
||||||
|
# ヘルスチェック
|
||||||
|
livenessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: /health
|
||||||
|
port: 8080
|
||||||
|
initialDelaySeconds: 10
|
||||||
|
periodSeconds: 10
|
||||||
|
|
||||||
|
readinessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: /health
|
||||||
|
port: 8080
|
||||||
|
initialDelaySeconds: 5
|
||||||
|
periodSeconds: 5
|
||||||
|
|
||||||
|
# Service設定
|
||||||
|
service:
|
||||||
|
type: ClusterIP
|
||||||
|
port: 80
|
||||||
|
targetPort: 8080
|
||||||
|
|
||||||
|
# Pod Disruption Budget
|
||||||
|
podDisruptionBudget:
|
||||||
|
enabled: true
|
||||||
|
minAvailable: 1
|
||||||
|
|
||||||
|
# Node Affinity / Pod Anti-Affinity
|
||||||
|
affinity:
|
||||||
|
podAntiAffinity:
|
||||||
|
preferredDuringSchedulingIgnoredDuringExecution:
|
||||||
|
- weight: 100
|
||||||
|
podAffinityTerm:
|
||||||
|
labelSelector:
|
||||||
|
matchExpressions:
|
||||||
|
- key: app.kubernetes.io/name
|
||||||
|
operator: In
|
||||||
|
values:
|
||||||
|
- nginx-redirect
|
||||||
|
topologyKey: kubernetes.io/hostname
|
||||||
|
|
||||||
|
# Additional labels
|
||||||
|
labels: {}
|
||||||
|
|
||||||
|
# Additional annotations
|
||||||
|
annotations: {}
|
||||||
Reference in New Issue
Block a user