gen | ||
wit | ||
.gitignore | ||
Dockerfile | ||
go.mod | ||
go.sum | ||
local.wadm.yaml | ||
main.go | ||
messaging.go | ||
README.md | ||
tools.go | ||
wadm.yaml | ||
wasmcloud.lock | ||
wasmcloud.toml |
Prerequisites
go
1.23tinygo
0.33wash
0.35.0wasmtime
25.0.0 (if running with wasmtime)
Building
wash build
Push OCI Artifact to Gitea
wash push gitea.rebus.ninja/lore/go-nats-client:1.x.x build/go_nats_client_s.wasm
Build and push to the registry using the dockerfile
Build the cointainer
docker build -t wash-image-build .
Build the component and push to the registry
First setup your credentials
export REG_USER=user && export REG_PASS=pass
Build and push
docker run --rm -e REGISTRY=gitea.rebus.ninja/lore/wasm-nats-producer-client:1.0.x -e WASH_REG_USER=$REG_USER -e WASH_REG_PASSWORD=$REG_PASS -v "$(pwd):/app" wash-image-build
Running with wasmtime
You must have wasmtime 25.0.0 for this to work. Make sure to follow the build step above first.
wasmtime serve -Scommon ./build/http_hello_world_s.wasm
Running with wasmCloud
Make sure to follow the build steps above, and replace the file path in the wadm manifest with the absolute path to your local built component.
wash up -d
wash app deploy ./wadm.yaml
curl http://localhost:8000
Adding Capabilities
To learn how to extend this example with additional capabilities, see the Adding Capabilities section of the wasmCloud documentation.