Getting k8shell Running in Minutes
Tomas Vitvar·The quickstart script installs the k8shell Helm chart with a minimal config: one admin user, one workspace namespace, SSH proxy on NodePort 30022.
Install
curl -sSfL https://get.k8shell.io | bash
The script prints a summary and asks for confirmation before touching your cluster. It generates an EC server key locally (saved to ~/k8shell-quickstart/), picks up your ~/.ssh public key, and runs helm install.
Note: The server key is generated locally — not inside the chart — so it stays stable across pod restarts and upgrades. If it changed on every reinstall, SSH clients would hit host key mismatch errors.
Your kubectl context needs create rights for Role and RoleBinding in k8shell-workspaces. A cluster-admin context satisfies this on a fresh cluster.
Verify
kubectl get pods -n k8shell-system
All pods should reach Running within a minute.
Connect
k8shell uses plain SSH with user~workspace as the username:
ssh -p 30022 -i ~/.ssh/id_ed25519 admin~ubuntu@<node-ip>
No NodePort? Use port-forwarding:
kubectl port-forward svc/ssh-proxy 2222:22 -n k8shell-system
ssh -p 2222 -i ~/.ssh/id_ed25519 admin~ubuntu@127.0.0.1
From here: expose the proxy via LoadBalancer or ingress, add users, define blueprints. See the full quickstart docs for details.