apiVersion: v1 kind: Service metadata: name: minio-svc spec: selector: app: commerce-minio ports: - name: s3 port: 9000 targetPort: 9000 - name: console port: 9001 targetPort: 9001 --- apiVersion: apps/v1 kind: StatefulSet metadata: name: commerce-minio spec: serviceName: minio-svc replicas: 1 selector: matchLabels: app: commerce-minio template: metadata: labels: app: commerce-minio spec: terminationGracePeriodSeconds: 60 containers: - name: minio image: quay.io/minio/minio:RELEASE.2025-10-15T17-29-55Z imagePullPolicy: IfNotPresent args: - server - /data - --console-address - ":9001" env: - name: MINIO_ROOT_USER valueFrom: secretKeyRef: name: commerce-secrets key: MINIO_ROOT_USER - name: MINIO_ROOT_PASSWORD valueFrom: secretKeyRef: name: commerce-secrets key: MINIO_ROOT_PASSWORD ports: - name: s3 containerPort: 9000 - name: console containerPort: 9001 readinessProbe: httpGet: path: /minio/health/ready port: s3 initialDelaySeconds: 10 periodSeconds: 10 timeoutSeconds: 5 failureThreshold: 12 livenessProbe: httpGet: path: /minio/health/live port: s3 initialDelaySeconds: 30 periodSeconds: 20 timeoutSeconds: 5 failureThreshold: 6 resources: requests: cpu: 100m memory: 256Mi limits: cpu: 500m memory: 768Mi volumeMounts: - name: minio-data mountPath: /data volumeClaimTemplates: - metadata: name: minio-data spec: accessModes: - ReadWriteOnce storageClassName: local-path resources: requests: storage: 20Gi