Rainer Stropek | @rstropek@fosstodon.org | @rstropek
https://commons.wikimedia.org/wiki/File:Markham-suburbs_aerial-edit2.jpg
https://jaredmultimedia.wordpress.com/2018/09/10/inspiration/
Run Wasm module in .NET with limited fuel
# Sample: https://github.com/rstropek/rust-samples/tree/master/hello-wagi
just wasmtime
# Sample: https://github.com/rstropek/rust-samples/tree/master/hello-wagi
just run-native level1
just run level1
# Open http://localhost:3000/level1-ping
# Change modules.toml and open http://localhost:3000/ping-oci
just run-native level2
just run level2
# Do some web requests to http://localhost:3000/level2
just run level3
# Open http://localhost:3000/level3
# Discuss file mappings
# Discuss routing
just run level4
# Execute GET http://localhost:3000/level4?year=2022&month=5&day=18
# Discuss allowed host
# Sample: https://github.com/rstropek/rust-samples/tree/master/hello-spin
just run
# Open http://localhost:3000/level1
# Send requests to http://localhost:3000/level2
# Send requests to http://localhost:3000/level3
# Build everything for Linux
just build-linux
# Check CLI
just help-linux
# Run native app
just run-linux
# Build everything for Wasm (Wasi)
just build-wasi
# Run tree generator with Wasmtime
just run-wasi
# Add gas limit to see resource limits in action
Wasmtime
# Build everything for Wasm (Wasi)
just build-wasi
# Run tree generator with WasmEdge
just run-wasmedge
# Run tree generator with stats
just run-wasmedge-stats
# AOT compile using wasmedgec
just aot
# Run AOT compiled version
just run-aot
WasmEdge
# Build spin app
just build-spin
# Run spin app
just run-spin
# Publish everything in the Spin cloud
just deploy-spin
Spin 🔗
# Build and publish Docker image
just docker
Wasm Workload on AKS 🔗
kubectl get nodes -o wide
kubectl describe node aks-mywasipool-41740949-vmss000000
kubectl describe node aks-mywasipool-41740949-vmss000000 | grep spin
cd AKS/spin-workload
kubectl apply -f spin.yaml