What is Docker+Wasm
What is Wasm?
Came across this at Kubecon 2022. Wow, talk about intriguing, at least for me :)Wasm (short for WebAssembly) is a faster, lighter alternative to the Linux & Windows containers you’re using in Docker today (with some tradeoffs).
WebAssembly, often shortened to Wasm, is a relatively new technology that allows you to compile application code written in over 40+ languages (including Rust, C, C++, JavaScript, and Golang) and run it inside sandboxed environments.
The original use cases were focused on running native code in web browsers, such as Figma, AutoCAD, and Photoshop. In fact, fastq.bio saw a 20x speed improvement when converting their web-based DNA sequence quality analyzer to Wasm. And Disney built their Disney+ Application Development Kit on top of Wasm! The benefits in the browser are easy to see.
But Wasm is quickly spreading beyond the browser thanks to the WebAssembly System Interface (WASI). Companies like Vercel, Fastly, Shopify, and Cloudflare support using Wasm for running code at the edge, and Fermyon is building a platform to run Wasm microservices in the cloud.
Why Docker?
Docker's goal is to help developers bring their ideas to life by conquering the complexity of app development. We strive to make it easy to build, share, and run your application, regardless of the underlying technologies. Making containers accessible to all will prove the ability to make developers' lives easier. On top of that, Docker was recognized as the #1 most-loved developer tool.Wasms could be seen as a complementary technology to Linux containers where developers can choose which technology they use (or both!) depending on the use case. And as the community explores what’s possible with Wasm, we want to help make Wasm applications easier to develop, build, and run using the experience and tools you know and love.
How do I get the technical preview?
Ready to dive in and try it for yourself? Great! But before you do, here are a couple of quick notes to keep in mind as you start exploring: Important note #1: This is a technical preview build of Docker Desktop, and things might not work as expected. Be sure to back up your containers and images before proceeding.
Important note #2: This preview has the containerd image store enabled and cannot be disabled. If you’re not currently using the containerd image store, pre-existing images and containers will be inaccessible.
Follow development on a crate to use OPA policies compiled to WASM
Pretty awesome, the ability to run Wasm applications alongside your Linux containers in Docker. Read the launch blog post here to learn more about the launch and how the preview works the launch blog post here.