apiVersion: v1 kind: Secret metadata: name: minio-secret namespace: file-transformer type: Opaque data: accesskey: bWluaW9hZG1pbg== # minioadmin secretkey: bWluaW9hZG1pbjEyMw== # minioadmin123 --- apiVersion: v1 kind: ConfigMap metadata: name: minio-config namespace: file-transformer data: MINIO_BUCKET_NAME: file-transformer-bucket --- apiVersion: apps/v1 kind: Deployment metadata: name: minio namespace: file-transformer labels: app: minio spec: replicas: 1 selector: matchLabels: app: minio template: metadata: labels: app: minio spec: containers: - name: minio image: minio/minio:latest ports: - containerPort: 9000 name: api - containerPort: 9001 name: console env: - name: MINIO_ROOT_USER valueFrom: secretKeyRef: name: minio-secret key: accesskey - name: MINIO_ROOT_PASSWORD valueFrom: secretKeyRef: name: minio-secret key: secretkey - name: MINIO_BUCKET_NAME valueFrom: configMapKeyRef: name: minio-config key: MINIO_BUCKET_NAME command: - /bin/bash - -c - | minio server /data --console-address ":9001" & sleep 10 mc alias set local http://localhost:9000 $MINIO_ROOT_USER $MINIO_ROOT_PASSWORD mc mb local/$MINIO_BUCKET_NAME --ignore-existing mc policy set public local/$MINIO_BUCKET_NAME wait volumeMounts: - name: minio-storage mountPath: /data resources: requests: memory: "256Mi" cpu: "250m" limits: memory: "512Mi" cpu: "500m" volumes: - name: minio-storage persistentVolumeClaim: claimName: minio-pvc --- apiVersion: v1 kind: Service metadata: name: minio namespace: file-transformer spec: selector: app: minio ports: - name: api port: 9000 targetPort: 9000 - name: console port: 9001 targetPort: 9001 type: ClusterIP --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: minio-pvc namespace: file-transformer spec: accessModes: - ReadWriteOnce resources: requests: storage: 20Gi