Files
2026-09-12 19:21:41 +02:00

136 lines
3.5 KiB
YAML

apiVersion: v1
kind: Secret
metadata:
name: opens3-console-secrets
namespace: minio
type: Opaque
stringData:
# Endpoint S3 del server MinIO a cui la console si collega.
# Cambialo con l'URL reale del tuo MinIO (Service interno o esterno).
CONSOLE_MINIO_SERVER: "http://minio.minio.svc.cluster.local:9000"
# Passphrase e salt usati da opens3/console per cifrare le sessioni
# (PBKDF2). Generane di robusti, es.:
# openssl rand -base64 32
CONSOLE_PBKDF_PASSPHRASE: "OHB576kn9SS4JdD7qG4+hyjRpa353HQqxPQ22z2Do0w="
CONSOLE_PBKDF_SALT: "OBHOWF2INklmrtmyI+qNEb3dbV0yz9ZAxiJJCcC6GYw="
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: opens3-console
namespace: minio
labels:
app.kubernetes.io/name: opens3-console
app.kubernetes.io/instance: opens3-console
spec:
replicas: 1
revisionHistoryLimit: 3
selector:
matchLabels:
app.kubernetes.io/name: opens3-console
app.kubernetes.io/instance: opens3-console
template:
metadata:
labels:
app.kubernetes.io/name: opens3-console
app.kubernetes.io/instance: opens3-console
spec:
securityContext:
runAsNonRoot: true
runAsUser: 1000
fsGroup: 1000
containers:
- name: console
image: opens3/console:latest
imagePullPolicy: IfNotPresent
ports:
- name: http
containerPort: 9090
protocol: TCP
envFrom:
- secretRef:
name: opens3-console-secrets
# Se il MinIO target usa certificati self-signed, decommenta:
# env:
# - name: CONSOLE_MINIO_TLS_SKIP_VERIFICATION
# value: "on"
readinessProbe:
httpGet:
path: /
port: http
initialDelaySeconds: 5
periodSeconds: 10
timeoutSeconds: 3
livenessProbe:
httpGet:
path: /
port: http
initialDelaySeconds: 15
periodSeconds: 20
timeoutSeconds: 3
resources:
requests:
cpu: 50m
memory: 128Mi
limits:
memory: 256Mi
securityContext:
allowPrivilegeEscalation: false
readOnlyRootFilesystem: true
capabilities:
drop: ["ALL"]
---
apiVersion: v1
kind: Service
metadata:
name: opens3-console
namespace: minio
labels:
app.kubernetes.io/name: opens3-console
app.kubernetes.io/instance: opens3-console
spec:
type: ClusterIP
selector:
app.kubernetes.io/name: opens3-console
app.kubernetes.io/instance: opens3-console
ports:
- name: http
port: 80
targetPort: http
protocol: TCP
---
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
metadata:
name: httproute-minio-direct
spec:
hostnames:
- idcidp.pigreco66.it
parentRefs:
- group: gateway.networking.k8s.io
kind: Gateway
name: main-gateway
namespace: nginx-gateway
rules:
- backendRefs:
- group: ""
kind: Service
name: opens3-console
port: 80
weight: 1
filters:
- responseHeaderModifier:
remove:
- X-Frame-Options
- Content-Security-Policy
set:
- name: X-Frame-Options
value: SAMEORIGIN
- name: Content-Security-Policy
value: frame-ancestors 'self'
type: ResponseHeaderModifier
matches:
- path:
type: PathPrefix
value: /minio-console