Docker 宣布推出与 WebAssembly 集成 (Docker+Wasm) 的第二个技术预览版。
Docker+Wasm 让开发者能够更容易地快速构建面向 Wasm 运行时的应用程序。下图介绍了 Docker 是如何与 WebAssembly 进行集成。
可以看到,Docker Engine 继续使用与整体生态相统一的 containerd 容器运行时,但创建了一个新的 containerd shim—— 把负责容器进程运行的 runC 替换成 WasmEdge runtime。据称这是和 WasmEdge 合作的项目,这个 containerd shim 从 OCI artifact 中提取 Wasm 模块,并使用 WasmEdge runtime 来运行。
Docker+Wasm 新的技术预览版支持以下三个新的运行时:
spin
,来自 Fermyonslight
,来自 Deislabswasmtime
,来自 Bytecode Alliance
包括 WasmEdge 在内,这些运行时均使用 Runwasi 库。
Runwasi 是一个多公司合作项目,致力于在 Rust 当中创建一个库,降低 Wasm 工作负载的 containerd shims 编写难度。去年 12 月,Runwasi 的 GitHub 代码仓库已被捐赠并移交至 CNCF 的 containerd 团队。
随着微软、Second State、Docker 等厂商的大量投入,Runwasi 现在已经拥有完备的功能,可以使用 Docker 或在 Kubernetes 集群中运行 Wasm 容器。
获取更新:
- Mac (Intel)
- Mac (Arm)
- Linux (deb, Intel)
- Linux (deb, Arm)
- Linux (rpm, Intel)
- Linux (Arch)
- Windows
点此查看详情。