Helm

Definition

Helm is a package manager for Kubernetes that simplifies the deployment and management of applications on a Kubernetes cluster. It uses a templating system to define, install, and upgrade complex Kubernetes applications, known as Helm charts. These charts encapsulate Kubernetes resources and configurations, enabling version control and reuse of application configurations.

Secure Settings Example

apiVersion: v2
name: secure-app
version: 1.0.0
dependencies:
  - name: nginx
    version: "1.16.0"
    repository: "https://charts.helm.sh/stable"
values:
  securityContext:
    runAsUser: 1000
    runAsGroup: 3000
    fsGroup: 2000
  podSecurityPolicy:
    enabled: true
    policyName: "restricted"

Insecure Settings Example

apiVersion: v2
name: insecure-app
version: 1.0.0
dependencies:
  - name: nginx
    version: "1.16.0"
    repository: "https://charts.helm.sh/stable"
values:
  securityContext:
    runAsUser: 0
    runAsGroup: 0
    fsGroup: 0
  podSecurityPolicy:
    enabled: false