A Go version of this installer is developed at the go-rewrite branch.
The KWasm Node Installer is a container image that contains binaries and configuration to enable a Kubernetes node to run pure webassembly images.
WARNING: Not meant to be used in production!
Since this installer changes the configuration of the node it can make a node unusable. We recommend using a fresh KinD/MiniKube/MicroK8s or a managed cloud service like AKS/GKE/EKS.
- KinD
- MiniKube
- MicroK8s
- Rancher RKE2
- Azure AKS
- GCP GKE (Ubuntu Nodes)
- AWS EKS (AmazonLinux2)
- AWS EKS (Ubuntu Nodes)
- Digital Ocean Kubernetes
- OCI OKE
- OpenShift
Prerequisites:
- Docker
- KinD
- kubectl
kind create cluster
# As default crun-wasmedge is used for installation.
kubectl apply -f https://raw.githubusercontent.com/KWasm/kwasm-node-installer/main/example/daemonset.yaml
kubectl apply -f https://raw.githubusercontent.com/KWasm/kwasm-node-installer/main/example/test-job.yaml
The dockerfile images/installer/Dockerfile
has multiple stages by building it you create an image that contains a crun version built with WasmEdge support and one with WasmTime. If you only need one of them you can use a different stage with the target parameter --target crun-wasmedge
or --target crun-wasmtime
.
docker build . -f images/installer/Dockerfile -t kwasm/kwasm-installer