Kasm Workspaces core services can be deployed to Kubernetes using the open-source Kasm Helm chart, which is Generally Available as of Kasm version 1.19.0 (chart version 1.1190.0).
Try Kasm Workspaces in your browser: kasm.com
Kasm Workspaces Community Edition is free for personal and small-team use. The chart works with both Community and commercial editions.
Kasm Workspaces is a container streaming platform that delivers browsers, desktops, and applications as disposable, isolated sessions in any modern browser. This chart deploys the Kasm core control-plane services — api, manager, guac, rdp-gateway, and rdp-https-gateway — into a Kubernetes cluster, along with an optional bundled PostgreSQL database.
A few things to know up front:
- Sessions do not run in the cluster. Containerized desktop, browser, and app sessions are hosted on external Docker Agent servers that you provision separately (statically or via auto scaling).
- RDP target hosts are external. RDP sessions are routed by the in-cluster gateways to Windows or Linux hosts running outside the cluster.
- Ingress fronts the deployment. Browser and HTTPS-based client traffic enters through your Ingress controller, typically backed by a cloud load balancer.
- Kubernetes 1.24+
- Helm 3.18.x+ (install Helm)
kubectlconfigured against your target cluster- A default StorageClass (or explicit
storageClassNamein your values) for the built-in PostgreSQL PVC — not required if you point the chart at an external database - A domain name you control, used as the
publicAddrfor Kasm - A TLS certificate (or cert-manager installed in the cluster)
Create a minimal my-values.yaml:
publicAddr: kasm.example.com
certificate:
secretName: my-tls-secretInstall from the OCI registry (recommended):
helm install kasm oci://registry-1.docker.io/kasmweb/kasm-helm \
--version 1.1190.0 \
--namespace kasm --create-namespace \
-f my-values.yamlOr from the classic Helm repository:
helm repo add kasmweb https://helm.kasm.com
helm repo update
helm install kasm kasmweb/kasm-helm \
--version 1.1190.0 \
--namespace kasm --create-namespace \
-f my-values.yamlAfter the pods are healthy, retrieve generated credentials and post-install notes:
helm get notes kasm -n kasmFor step-by-step instructions — including TLS, DNS, secret pre-seeding, and verification — see the Documentation section below.
The chart is configured through values.yaml. Two values are required to install — publicAddr (the public DNS name for the deployment) and certificate.secretName (the TLS secret to terminate ingress with) — both shown in the Quick Start above.
For the full values reference (cert-manager, external database, ingress, per-component overrides, multi-zone topology, and more), see the chart documentation in the Helm chart repository. The repo also includes example manifests for pre-seeding secrets and managing database backups.
Chart versions track Kasm Workspaces versions. The middle component of the chart version corresponds to the Kasm release — for example, chart 1.1181.0 matches Kasm Workspaces 1.18.1. This branch (1.1190.0 / app 1.19.0) is the 1.19.0 release.
| Branch | Purpose |
|---|---|
release/<version> |
Stable chart for a specific Kasm Workspaces release |
develop |
Developer previews — no guaranteed migration path; not for production |
Always use the chart version that matches the Kasm Workspaces version you are deploying.
- Kasm Workspaces website
- Kasm documentation — installation, upgrade, configuration, multi-region, VM-to-Kubernetes migration, and troubleshooting
- Helm chart repository — chart source, values reference, and examples
- Kasm on GitHub — KasmVNC and the open-source workspace image library
- Helm chart issues and discussion
This chart is published by Kasm Technologies. Kasm Workspaces itself is licensed separately — see kasm.com for license terms.