A Helm chart for Kubedoom
helm repo add christianhuth https://charts.christianhuth.de
helm repo update
helm install my-release christianhuth/kubedoom
This chart bootstraps Kubedoom on a Kubernetes cluster using the Helm package manager.
- Kubernetes 1.19+
To install the chart with the release name my-release
:
helm repo add christianhuth https://charts.christianhuth.de
helm repo update
helm install my-release christianhuth/kubedoom
These commands deploy Kubedoom on the Kubernetes cluster in the default configuration. The Values section lists the values that can be configured during installation.
Tip: List all releases using
helm list
Once everything is up and running inside your cluster, you will need to port forward by getting the pod and running kubectl port-forward.
$ kubectl get pods -n kubedoom
NAME READY STATUS RESTARTS AGE
kubedoom-kubedoom-chart-676bcc5c9c-xkwpp 1/1 Running 0 2m29s
$ kubectl port-forward kubedoom-kubedoom-chart-676bcc5c9c-xkwpp 5900:5900 -n kubedoom
Forwarding from 127.0.0.1:5900 -> 5900
Forwarding from [::1]:5900 -> 5900
Now start a VNC viewer and connect to the URL of your Kubedoom installation. The password is idbehold
.
$ vncviewer viewer localhost:5900
You should now see DOOM! Now if you want to get the job done quickly enter the cheat idspispopd
and walk through the wall on your right. You should be greeted by your pods as little pink monsters. Press CTRL to fire. If the pistol is not your thing, cheat with idkfa
and press 5
for a nice surprise. Pause the game with ESC.
To uninstall the my-release
deployment:
helm uninstall my-release
The command removes all the Kubernetes components associated with the chart and deletes the release.
Key | Type | Default | Description |
---|---|---|---|
affinity | object | {} |
Affinity settings for pod assignment |
autoscaling.enabled | bool | false |
Enable Horizontal POD autoscaling |
autoscaling.maxReplicas | int | 100 |
Maximum number of replicas |
autoscaling.minReplicas | int | 1 |
Minimum number of replicas |
autoscaling.targetCPUUtilizationPercentage | int | 80 |
Target CPU utilization percentage |
autoscaling.targetMemoryUtilizationPercentage | int | 80 |
Target Memory utilization percentage |
extraEnv | list | [] |
additional environment variables to be added to the pods |
fullnameOverride | string | "" |
String to fully override "kubedoom.fullname" |
image.pullPolicy | string | "Always" |
image pull policy |
image.registry | string | "ghcr.io" |
image registry |
image.repository | string | "storax/kubedoom" |
image repository |
image.tag | string | "0.6.0" |
Overrides the image tag |
imagePullSecrets | list | [] |
If defined, uses a Secret to pull an image from a private Docker registry or repository. |
kubedoom.mode | string | "pods" |
You can also kill Namespaces instead of Pods. Simply set this to namespaces . Allowed values: pods , namespaces . |
kubedoom.namespace | string | "" |
You can limit Kubedoom to deleting pods in a single namespace |
nameOverride | string | "" |
Provide a name in place of kubedoom |
nodeSelector | object | {} |
Node labels for pod assignment |
podAnnotations | object | {} |
Annotations to be added to the pods |
podSecurityContext | object | {} |
pod-level security context |
replicaCount | int | 1 |
Number of replicas |
resources | object | {} |
Resource limits and requests for the controller pods. |
revisionHistoryLimit | int | 10 |
The number of old ReplicaSets to retain |
securityContext | object | {} |
container-level security context |
service.port | int | 5900 |
Kubernetes port where service is exposed |
service.type | string | "ClusterIP" |
Kubernetes service type |
serviceAccount.annotations | object | {} |
Annotations to add to the service account |
serviceAccount.create | bool | true |
Specifies whether a service account should be created |
serviceAccount.name | string | "" |
The name of the service account to use. If not set and create is true, a name is generated using the fullname template |
tolerations | list | [] |
Toleration labels for pod assignment |
Specify each parameter using the --set key=value[,key=value]
argument to helm install
.
Alternatively, a YAML file that specifies the values for the parameters can be provided while installing the chart. For example,
helm install my-release -f values.yaml christianhuth/kubedoom