Wasmo Docs

Search

Getting started

Wasmo Builder is an all-in-one builder for creating, editing and building small and optimized WASM binaries.

§Key Features

  • Variety of languages: Write plugins in your favorite language, Javascript, Typescript, Rust, Golang or Open Policy Agent.
  • Build in one click: Click the hammer and start using your wasm in seconds
  • Fast starter: Deploy the builder in-memory

§Instantiate a Wasmo Builder

§Prerequisites

  • Docker: A Docker-enabled system with proper Docker access

Choose a path to install Wasmo Builder:

  • With a database: Use a database to store generated Wasm binaries. Can use the Builder UI for editing plugins.
  • Without a database (in-memory): Store generated Wasm binaries on the file system. In this mode, the Builder UI is unavailable but the CLI keeps running.

Run the following command in your terminal to start your builder using a S3 storage.

These commands will first create a custom Docker network.

docker network create wasmo-network

then instantiate a new S3 from the Scality image

docker run -d --name s3Server \
    -p 8000:8000 \
    -e SCALITY_ACCESS_KEY_ID=access_key \
    -e SCALITY_SECRET_ACCESS_KEY=secret \
    --net wasmo-network scality/s3server

and run a Wasmo Builder connnected to the S3.

docker run -d --net wasmo-network \
    --name wasmo \
    -p 5001:5001 \
    -e "AUTH_MODE=NO_AUTH" \
    -e "AWS_ACCESS_KEY_ID=access_key" \
    -e "AWS_SECRET_ACCESS_KEY=secret" \
    -e "S3_FORCE_PATH_STYLE=true" \
    -e "S3_ENDPOINT=http://localhost:8000" \
    -e "S3_BUCKET=wasmo" \
    -e "STORAGE=DOCKER_S3" \
    maif/wasmo

If all goes well, Wasmo should now be serving your builder on http://localhost:5001/.

If you are running Docker on MacOS or Windows, you should change S3_ENDPOINT to http://host.docker.internal:8000.