Manage WebAssembly Apps in WasmEdge Using Docker Tools

submited by
Style Pass
2021-07-09 10:30:06

Developers can leverage Docker tools such as the DockerHub and CRI-O to deploy, manage, and run lightweight WebAssembly applications in WasmEdge. While the WebAssembly function could be written in a number of programing languages, Rust is by far the safest and fastest choice for WebAssembly.

WasmEdge, an advanced WebAssembly runtime hosted by the CNCF (Cloud Native Computing Foundation), is an execution sandbox for Edge Computing applications.

While WebAssembly was initially invented as a runtime for browser applications, its lightweight and high-performance sandbox design has made it an appealing choice as a general-purpose application container.

Compared with Docker, WebAssembly could be 100x faster at startup, have a much smaller memory and disk footprint, and have a better-defined safety sandbox. However, the trade-off is that WebAssembly requires its own language SDKs, and compiler toolchains, making it a more constrained developer environment than Docker. WebAssembly is increasingly used in Edge Computing scenarios where it is difficult to deploy Docker or when the application performance is vital.

One of the great advantages of Docker is its rich ecosystem of tools. At WasmEdge, we would like to bring Docker-like tooling to our developers. To accomplish that, we created an alternative runner for CRI-O, called runw, to load and run WebAssembly bytecode programs as if they are Docker image files.

Leave a Comment