写点什么

Docker+Wasm 第 2 个技术预览版发布,新增 3 个运行时引擎支持

  • 2023-04-10
    北京
  • 本文字数:883 字

    阅读完需:约 3 分钟

Docker+Wasm第2个技术预览版发布,新增3个运行时引擎支持

Docker宣布了 Docker+Wasm 的第 2 个技术预览版,旨在简化 Wasm 工作负载的运行,并扩展运行时支持,包括Fermyon的spinDeislabs的slightBytecode Alliance的wasmtime运行时引擎。

 

Docker+Wasm 中新增支持的 3 个 Wasm 引擎使其支持的运行时总数达到了 4 个,其中包括在Docker+Wasm第1个技术预览版中已经支持的 WasmEdge。它们都基于runwasi库。该库最近加入了containerd 项目

 

runwasi是一个 Rust 库,它支持运行通过 containerd 管理的 wasm 工作负载。因此,除了 containerd 最初支持的 Linux 容器之外,它还为新的容器类型创建了一个有效的抽象。顾名思义,runwasi 是基于WASI的。WASI 是 WebAssembly 的模块化系统接口,为 Wasm 运行时提供了一个公共平台。也就是说,如果一个程序被编译为目标 WASI,那么它就可以在任何符合 WASI 标准的运行时上运行。

 

通常,Wasm 容器只包含一个编译好的 Wasm 字节码文件,而且不需要任何额外的二进制库,这使得容器小很多。这也意味着 Wasm 容器的启动速度通常比 Linux 容器更快,而且可移植性更好。例如,正如 WasmEdge 联合创始人Michael Yuan在Twitter上所说的那样,Linux 上“最小”的 Python 容器镜像超过 40MB,而对应的Wasm容器镜像不到7MB

 

作为 containerd 直接支持的 Wasm 容器,要在 Docker Desktop 的最新版本中尝试 Docker+Wasm 的第 2 个技术预览版,唯一需要做的事情是启用开发 > Settings > Features 下的“Use containerd”选项。

 

使用 wasmtime 运行 Wasm 容器,可以执行以下命令:

$ docker run --rm --runtime=io.containerd.wasmtime.v1 --platform=wasi/wasm secondstate/rust-example-hello:latest
复制代码

 

正因为如此,借助 Docker Compose 或其他编排平台(如 Kubernetes),Wasm 容器可以与 Linux 容器并行运行。此外,通过在 OCI 容器中嵌入 Wasm 运行时,Docker Desktop 还可以将 Wasm 应用程序打包到 OCI 容器中,从而可以通过 DockerHub 等容器注册中心来共享 Wasm 应用程序。

 

原文链接:

https://www.infoq.com/news/2023/03/docker-wasm-containers-preview-2/


相关阅读:

部署太慢,我们用 Warm Docker 容器将速度提高了 5 倍

Docker正在淘汰开源组织,CTO硬刚开发者,网友:想赚钱可以,但沟通方式烂透了

2023-04-10 08:0010448

评论

发布
暂无评论
发现更多内容

MySQL数据量太大,日常卡死!想跑路了,java三大框架面试题

Java 程序员 后端

linux中route命令超详细用法(十五万字),nginx实战基于luapdf

Java 程序员 后端

Linux怎么学?一张思维导图带你深入Linux核心原理,mybatis基础面试题

Java 程序员 后端

Lua+OpenResty+nginx,java菜鸟教程集合

Java 程序员 后端

Mybatis学习笔记--Mybatis的概念与入门案例,java中高级面试题最新

Java 程序员 后端

MySQL InnoDB 事务隔离级别的实现原理,linux群集部署架构

Java 程序员 后端

MyBatis07:使用注解开发,java教程视频我赢职场

Java 程序员 后端

Mysql必知必会:物理备份与恢复测试,linux教程第四版答案孟庆昌

Java 程序员 后端

Mybatis学习笔记--延迟加载与缓存,深入分析解读MySQL锁,解决幻读问题

Java 程序员 后端

mybatis学习一之入门示例,阿里+头条+腾讯等大厂Java面试题分享

Java 程序员 后端

Mysql探索之索引详解,又能和面试官互扯了~,mysql基础知识笔记

Java 程序员 后端

Kubernetes实战(一)-Kubernetes集群搭建,java注解扫描原理

Java 程序员 后端

为什么一定要学习设计模式

Tom弹架构

Java 架构 设计模式

MyBatis初级实战之三:springboot集成druid,java实用教程第五版

Java 程序员 后端

MySQL热点面试题:为什么我使用了索引,查询还是慢,java基础入门第二版第四章答案

Java 程序员 后端

Mybatis学习笔记--自定义Mybatis,java数据结构面试题及答案

Java 程序员 后端

Mysql 纵表转换为横表,靠着这份190页的面试资料

Java 程序员 后端

Kubernetes官方java客户端之四:内部应用,孙鑫java视频教程百度网盘

Java 程序员 后端

Kurento实战之五:媒体播放,mysql高级教程ppt

Java 程序员 后端

Linux安装JDK并配置环境变量 - 详细步骤,被腾讯辞退的高级Java工程师现在怎么了

Java 程序员 后端

Matlab数值微分与数值积分,linux环境高级编程

Java 程序员 后端

Mybatis入门篇之结果映射,你射准了吗?,java框架ssh和ssm百度

Java 程序员 后端

Mybatis源码分析二-如何优雅的使用主体日志,zookeeper集群实现原理

Java 程序员 后端

Maven虐我千百遍,我待Maven如初恋!(1),springcloud实战演练

Java 程序员 后端

Maven虐我千百遍,我待Maven如初恋!,mongodb教程

Java 程序员 后端

MyBatis初级实战之二:增删改查,java项目开发实战入门光盘

Java 程序员 后端

MyBatis官方文档-入门,java开发工程师技术栈

Java 程序员 后端

MyBatis实现一对一,一对多关联查询,java程序设计教程课后题

Java 程序员 后端

Mybatis学习笔记--多表查询,java入门基础代码

Java 程序员 后端

MyBatis的SQL执行流程不清楚?看完这一篇就够了!,kafka视频教程下载

Java 程序员 后端

MySQL中特别实用的几种SQL语句送给大家,java面试核心知识

Java 程序员 后端

Docker+Wasm第2个技术预览版发布,新增3个运行时引擎支持_容器_Sergio De Simone_InfoQ精选文章