Skip to main content
Version: v2.0.0-rc

Install wasmCloud

Install the parts of the wasmCloud platform that you need depending on what you want to accomplish:

Install wash

In your terminal, run the installation script to download and install the latest version of wash (2.0.0-rc.7):

shell
curl -fsSL https://raw.githubusercontent.com/wasmcloud/wash/refs/heads/main/install.sh | bash

On a successful installation, the script will return:

shell
[INFO] Next steps:
  1. Add /path/to to your PATH if not already included
  2. Run 'wash --help' to see available commands
  3. Run 'wash new' to create your first WebAssembly component

Add wash to your PATH with the filepath listed in Step 1, replacing /path/to with your local filepath:

shell
export PATH="$PATH:/path/to/wash"

Verify that wash is properly installed and check your version for 2.0.0-rc.7 with:

bash
wash -V

Now that wash is installed, the next step is to build and publish a Wasm application.

Install wasmCloud on Kubernetes

Installation requires the following tools:

You'll also need a Kubernetes environment. We recommend kind for the best local Kubernetes experience.

Local Kubernetes environment

You can use the one-liner below to start a kind cluster with a configuration from the wasmcloud/wash repository.

shell
curl -fLO https://raw.githubusercontent.com/wasmCloud/wash/refs/heads/main/kind-config.yaml && kind create cluster --config=kind-config.yaml && rm kind-config.yaml

Install the wasmCloud operator

Use Helm to install the wasmCloud operator from an OCI chart image, using the values for local installation:

shell
helm install wasmcloud --version v2-canary oci://ghcr.io/wasmcloud/charts/runtime-operator -f https://raw.githubusercontent.com/wasmCloud/wash/refs/heads/main/charts/runtime-operator/values.local.yaml

Verify the deployment:

shell
kubectl get pods -l app.kubernetes.io/instance=wasmcloud -n default

Once all pods are running, you're ready to deploy a Wasm workload.

Deploy a Wasm workload

You can deploy a "Hello world" Wasm workload from a wasmCloud-hosted manifest with this kubectl command:

shell
kubectl apply -f https://raw.githubusercontent.com/wasmCloud/wash/refs/heads/main/examples/http-hello-world/manifests/workloaddeployment.yaml

Use curl to invoke the Wasm workload with an HTTP request:

shell
curl localhost -i
text
Hello from wasmCloud!

For more information on each of these steps, see Kubernetes Operator.

Clean up

Delete the workload deployment:

shell
kubectl delete workloaddeployment hello-world

Uninstall wasmCloud:

shell
helm uninstall wasmcloud

Delete the local Kubernetes environment:

shell
kind delete cluster

Next steps