> ## Documentation Index
> Fetch the complete documentation index at: https://docs.casebender.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Distribuire su OpenShift

> Distribuisci CaseBender su Red Hat OpenShift 4.x con l’overlay restricted-v2

<Warning>
  Questo profilo **non** è una certificazione Red Hat né una procedura certificata
  per ogni minor release di OpenShift. Fuori da OpenShift usare la
  [guida Compose on-premises](/it/quickstart).
</Warning>

<Info>
  Storage ODF/Ceph:
  [Storage OpenShift ODF e Ceph RGW](/it/deployment/storage-openshift-odf-rgw).
  Guida canonica (inglese): [Deploy to OpenShift](/en/deployment/openshift).
</Info>

## Panoramica

Distribuisci CaseBender su **OpenShift 4.x** con `k8s/overlays/openshift`
(Kustomize), pensato per SCC **`restricted-v2`**: UID non-root arbitrario,
niente privilege escalation, seccomp `RuntimeDefault`, root in sola lettura.
**Non** applicare `k8s/base` direttamente. Ingress è sostituito da **Route**;
i Secret placeholder non vengono renderizzati.

Workload: `webapp`, `api`, `ingestion`, `worker`, `workflow-processor`,
`connector-worker`, `misp-processor`, `search-sync`. PostgreSQL e Redis sono
**esterni**.

## Prerequisiti

OpenShift 4.x, `oc`/`kubectl`, PostgreSQL 14+ e Redis con TLS, DNS della Route,
immagini CaseBender **per digest**, meccanismo dei secret. Il YAML renderizzato
non contiene oggetti Secret.

## Passaggi

1. `oc login` e verifica `restricted-v2`.
2. Storage: PVC RWX (`k8s/overlays/openshift`) oppure ODF
   (`k8s/overlays/openshift-odf-rgw`). CaseBender non crea i bucket.
   In produzione serve **clamd**.
3. Copia l’overlay: digest delle immagini, host Route, StorageClass, CIDR
   NetworkPolicy (niente `0.0.0.0/0` in produzione).
4. Crea `casebender-secrets` **prima** del primo rollout (vedi
   `external-resources.example.yaml`). Conserva `AUDIT_INTEGRITY_SECRET`.
5. Render, validazione, apply:

```bash theme={null}
kubectl kustomize k8s/overlays/openshift \
  > /tmp/casebender-openshift.yaml
./scripts/openshift/validate.sh /tmp/casebender-openshift.yaml
oc apply --server-side --dry-run=server -f /tmp/casebender-openshift.yaml
oc apply --server-side -f /tmp/casebender-openshift.yaml
oc -n casebender rollout status deployment --timeout=10m
```

6. Verifica pod, Route HTTPS, SCC e health
   (`/api/health/live`, `/api/health/ready`).

Registry disconnesso, proxy e CA: [Deploy to OpenShift](/en/deployment/openshift).
