Files
phpmyadmin/values.yaml
pieter 2130a9a5d3
All checks were successful
Helm Chart Release / release-chart (push) Successful in 11s
定期バックアップ機能の追加
2026-02-06 23:21:32 +00:00

308 lines
6.1 KiB
YAML

# Default values for phpmyadmin-nginx
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
replicaCount: 1
image:
nginx:
registry: docker.io
repository: nginx
tag: "1.29.3-alpine-perl"
pullPolicy: IfNotPresent
phpmyadmin:
registry: docker.io
repository: phpmyadmin
tag: "5.2.3-fpm-alpine"
pullPolicy: IfNotPresent
imagePullSecrets: []
nameOverride: ""
fullnameOverride: ""
serviceAccount:
create: true
annotations: {}
name: ""
podAnnotations: {}
podSecurityContext:
fsGroup: 82
runAsNonRoot: true
seccompProfile:
type: RuntimeDefault
securityContext:
nginx:
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
readOnlyRootFilesystem: true
runAsNonRoot: true
runAsUser: 101
phpmyadmin:
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
readOnlyRootFilesystem: false
runAsNonRoot: true
runAsUser: 82
service:
type: LoadBalancer
# type: ClusterIP
port: 80
targetPort: 8080
annotations: {}
ingress:
enabled: false
className: "nginx"
annotations: {}
# {
# acme.cert-manager.io/http01-ingress-class: "nginx",
# cert-manager.io/cluster-issuer: "letsencrypt-issuer",
# nginx.ingress.kubernetes.io/from-to-www-redirect: "true",
# nginx.ingress.kubernetes.io/proxy-body-size: "100m",
# nginx.ingress.kubernetes.io/rate-limit: "10"
# }
hosts:
- host: phpmyadmin.local
paths:
- path: /
pathType: Prefix
tls: []
# - secretName: phpmyadmin-tls
# hosts:
# - phpmyadmin.local
resources:
nginx:
limits:
cpu: 200m
memory: 128Mi
requests:
cpu: 100m
memory: 64Mi
phpmyadmin:
limits:
cpu: 500m
memory: 512Mi
requests:
cpu: 250m
memory: 256Mi
autoscaling:
enabled: false
minReplicas: 2
maxReplicas: 10
targetCPUUtilizationPercentage: 80
targetMemoryUtilizationPercentage: 80
nodeSelector: {}
tolerations: []
affinity:
podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- weight: 100
podAffinityTerm:
labelSelector:
matchExpressions:
- key: app.kubernetes.io/name
operator: In
values:
- phpmyadmin-nginx
topologyKey: kubernetes.io/hostname
# phpMyAdmin specific configuration
phpmyadmin:
# MySQL/MariaDB server configuration
hosts:
- host: mysql.default.svc.cluster.local
port: 3306
# Environment variables
env:
PMA_ARBITRARY: "0"
PMA_ABSOLUTE_URI: ""
UPLOAD_LIMIT: "128M"
MEMORY_LIMIT: "512M"
MAX_EXECUTION_TIME: "600"
# Secret for blowfish secret (auto-generated if not provided)
blowfishSecret: ""
existingSecret: ""
# Nginx configuration
nginx:
config:
clientMaxBodySize: "128m"
workerProcesses: "auto"
workerConnections: "1024"
# Persistence for sessions
persistence:
enabled: false
storageClass: ""
accessMode: ReadWriteMany
size: 1Gi
annotations: {}
# Liveness and readiness probes
livenessProbe:
enabled: true
initialDelaySeconds: 30
periodSeconds: 10
timeoutSeconds: 5
failureThreshold: 6
successThreshold: 1
readinessProbe:
enabled: true
initialDelaySeconds: 10
periodSeconds: 5
timeoutSeconds: 3
failureThreshold: 3
successThreshold: 1
# Network Policy
networkPolicy:
enabled: false
policyTypes:
- Ingress
- Egress
ingress:
- from:
- namespaceSelector:
matchLabels:
name: ingress-nginx
ports:
- protocol: TCP
port: 8080
egress:
- to:
- namespaceSelector: {}
ports:
- protocol: TCP
port: 3306
- to:
- namespaceSelector:
matchLabels:
name: kube-system
ports:
- protocol: UDP
port: 53
# Pod Disruption Budget
podDisruptionBudget:
enabled: true
minAvailable: 1
# maxUnavailable: 1
# MySQL Backup Configuration
backup:
# Enable or disable backup functionality
enabled: false
# Cron schedule (default: daily at 2 AM)
# Examples:
# "0 2 * * *" - Daily at 2 AM
# "0 */6 * * *" - Every 6 hours
# "0 0 * * 0" - Weekly on Sunday at midnight
# "0 3 * * 1-5" - Weekdays at 3 AM
schedule: "0 2 * * *"
# Backup job history
successfulJobsHistoryLimit: 3
failedJobsHistoryLimit: 3
backoffLimit: 3
# Concurrency policy: Allow, Forbid, Replace
concurrencyPolicy: Forbid
# Suspend backup jobs
suspend: false
# Pod annotations for backup jobs
podAnnotations: {}
# Backup image configuration
image:
registry: docker.io
repository: mysql
tag: "8.0"
pullPolicy: IfNotPresent
# MySQL credentials for backup
# Note: host and port are inherited from phpmyadmin.hosts[0]
mysql:
# MySQL backup user credentials
user: ""
password: ""
# Or use existing secret
existingSecret: ""
userKey: "mysql-user"
passwordKey: "mysql-password"
# Databases to backup (if empty, backs up all non-system databases)
databases: []
# databases:
# - myapp_db
# - analytics_db
# Backup destination path
destinationPath: "/backup"
# Compression settings
compression:
enabled: true
# Compression level 1-9 (1=fastest, 9=best compression)
level: 6
# Retention policy
retention:
enabled: true
# Delete backups older than N days
days: 30
# Storage configuration
# Option 1: Use PersistentVolumeClaim
persistence:
storageClass: ""
accessMode: ReadWriteMany
size: 50Gi
annotations: {}
# Option 2: Use existing PVC
existingClaim: ""
# Option 3: Use NFS
nfs:
enabled: false
server: "nfs-server.example.com"
path: "/exports/mysql-backups"
readOnly: false
# Resource limits
resources:
limits:
cpu: 1000m
memory: 1Gi
requests:
cpu: 500m
memory: 512Mi
# Node selector (inherits from global nodeSelector if not set)
nodeSelector: {}
# Tolerations (inherits from global tolerations if not set)
tolerations: []
# Affinity (inherits from global affinity if not set)
affinity: {}