Problem
Self-managed NVCF needs its distributed containers and generated worker init containers to run as non-root by default. OCI image metadata and Kubernetes security contexts are separate controls: a pod can run as non-root while its image still has an unset Config.User and is reported as root by an image scanner.
The NVCF scope includes core service images, dependencies, and helper images used by the current self-managed stack. The Cassandra runtime and migration path was hardened in #1712.
Out of scope
The following images appear in the source inventory but are not owned by NVCF and are not built or distributed by this repository's self-managed stack:
ddcs-dist-kv
gxcache-service
gxcache-webhook
gxcache-init
streaming-proxy
This issue does not require changes to these images.
Implementation plan
Acceptance criteria
- Every NVCF-owned released image in scope declares a numeric non-root OCI user, and its rendered workload explicitly uses a compatible non-root security context.
- Generated worker init containers can read configuration and write required shared files without root privileges.
- Cassandra migration hooks remain non-root.
- Both Helmfile topologies render and install successfully, including relevant migration and bootstrap hooks.
- Image metadata and runtime execution are verified separately against released digests.
Problem
Self-managed NVCF needs its distributed containers and generated worker init containers to run as non-root by default. OCI image metadata and Kubernetes security contexts are separate controls: a pod can run as non-root while its image still has an unset
Config.Userand is reported as root by an image scanner.The NVCF scope includes core service images, dependencies, and helper images used by the current self-managed stack. The Cassandra runtime and migration path was hardened in #1712.
Out of scope
The following images appear in the source inventory but are not owned by NVCF and are not built or distributed by this repository's self-managed stack:
ddcs-dist-kvgxcache-servicegxcache-webhookgxcache-initstreaming-proxyThis issue does not require changes to these images.
Implementation plan
Acceptance criteria