⭐⭐⭐ Spring Boot 项目实战 ⭐⭐⭐ Spring Cloud 项目实战
《Dubbo 实现原理与源码解析 —— 精品合集》 《Netty 实现原理与源码解析 —— 精品合集》
《Spring 实现原理与源码解析 —— 精品合集》 《MyBatis 实现原理与源码解析 —— 精品合集》
《Spring MVC 实现原理与源码解析 —— 精品合集》 《数据库实体设计合集》
《Spring Boot 实现原理与源码解析 —— 精品合集》 《Java 面试题 + Java 学习指南》

摘要: 原创出处 OSC开源社区(ID:oschina2013) 「OSC开源社区」欢迎转载,保留摘要,谢谢!


🙂🙂🙂关注**微信公众号:【芋道源码】**有福利:

  1. RocketMQ / MyCAT / Sharding-JDBC 所有源码分析文章列表
  2. RocketMQ / MyCAT / Sharding-JDBC 中文注释源码 GitHub 地址
  3. 您对于源码的疑问每条留言将得到认真回复。甚至不知道如何读源码也可以请教噢
  4. 新的源码解析文章实时收到通知。每周更新一篇左右
  5. 认真的源码交流微信群。

Docker 宣布推出与 WebAssembly 集成 (Docker+Wasm) 的首个技术预览版,并表示公司已加入字节码联盟 (Bytecode Alliance),成为投票成员。

Bytecode Alliance(字节码联盟)由 Mozilla、Fastly、Intel 与 Red Hat 联合成立,是一个推动 WebAssembly 标准化的组织,该联盟旨在通过协作实施标准和提出新标准,以完善 WebAssembly 在浏览器之外的生态。目前正在积极推动 WASI (WebAssembly System Interface),使 WebAssembly 能够安全地访问文件、网络和内存等系统资源。

公告写道,Docker+Wasm 让开发者能够更容易地快速构建面向 Wasm 运行时的应用程序

下图介绍了 Docker 是如何与 WebAssembly 进行集成。

可以看到,Docker Engine 继续使用与整体生态相统一的 containerd 容器运行时,但创建了一个新的 containerd shim—— 把负责容器进程运行的 runC 替换成 WasmEdge runtime。据称这是和 WasmEdge 合作的项目,这个 containerd shim 从 OCI artifact 中提取 Wasm 模块,并使用 WasmEdge runtime 来运行。

Docker 没有透露更多细节,但 WasmEdge 承诺会提供优于 Linux 容器的启动时间,而且 WasmEdge 应用程序的体积也明显更小,且运行速度更快。

Docker 联合创始人 Michael Irwin 写道:“我们将 Wasm 视为 Linux 容器的补充性技术,开发者可以结合自身情况选择最适合的技术方案(或者二者并用)。随着社区对 Wasm 的探索,我们希望开发者可以使用熟悉和喜爱的经验和工具,帮助让 Wasm 应用程序更易于开发、构建和运行。”

使用

使用下面命令即可启动示例 Wasm 应用程序:

docker run -dp 8080:8080 --name=wasm-example --runtime=io.containerd.wasmedge.v1 --platform=wasi/wasm32 michaelirwin244/wasm-example

参数解释:

  • --runtime=io.containerd.wasmedge.v1– 告知 Docker Engine 要使用 Wasm containerd shim 而不是标准的 Linux 容器运行时
  • --platform=wasi/wasm32– 指定要使用的镜像的架构。通过利用 Wasm 架构,开发者无需为不同的架构构建单独的镜像。Wasm runtime 将完成将 Wasm 二进制文件转换为机器指令的最后一步。

*获取方式*

下载 Docker Desktop 的技术预览版本即可体验 Docker+Wasm:

  • macOS Apple Silicon:https://dockr.ly/3sf56vH

  • macOS Intel:https://dockr.ly/3VF6uFB

  • Windows AMD64:https://dockr.ly/3ShlsP0

  • Linux Arm64 (deb):https://dockr.ly/3TDcjRV

  • Linux AMD64 (deb):https://dockr.ly/3TgpWH8

    (rpm):https://dockr.ly/3eG6Mvp

    (tar):https://dockr.ly/3yUhdCk

要注意的是,由于 Docker+Wasm 尚处于早期的技术预览阶段,不建议在生产环境使用,因为有可能会出现变更,甚至从未来版本中删除。

详情查看:https://docs.docker.com/desktop/wasm/

文章目录