2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

Docker 发布首个 WebAssembly 支持工具预览版

  • 2022-11-08
    北京
  • 本文字数:1026 字

    阅读完需:约 3 分钟

Docker 发布首个 WebAssembly 支持工具预览版

在 KubeCon NA 2022 大会的云原生Wasm活动日中,Docker 宣布与 CNCF Wasm 运行时项目WasmEdge合作推出Docker+Wasm技术预览。只需一个命令docker compose up,Docker 开发人员就可以立即构建、分享和运行一个完整的 Wasm 应用程序。

 

Wasm 最初是作为 Web 浏览器的安全沙盒开发的。近年来,作为 VM 和 Linux 容器(LXC)的一个安全、轻量级、快速、可移植的替代方案,它在服务器端找到了许多应用场景——这一领域最初是由 Docker 开创的。

 

Second State 提供了一个标准的Docker+Wasm演示应用程序。这是一个数据库驱动的 Web 应用程序,它包含一个用于运行整个 Web 服务(微服务)的 WasmEdge“容器”,以及两个用于运行支持服务的 Linux 容器(一个用于 MySQL 数据库,一个用于为前端 UI 提供静态 HTML 页面的 NGINX)。这三个容器在同一个网络中并行运行,共同组成一个应用程序。微服务用 Rust 编写,并编译成 Wasm。它有一个高性能(非阻塞)的 HTTP 服务器、一个事件处理程序(处理 HTTP 请求的业务逻辑)和一个 MySQL 数据库客户端。整个“容器化”的微服务只有 3MB,而相比之下,数据库和 NGINX 的 Linux 容器则有数百 MB。



图片来源:Docker+Wasm技术预览简介

 

Docker Compose不仅能将 Wasm 应用程序和容器一样运行,还会将 Rust 源代码构建为 Wasm。开发人员甚至不需要安装 Rust 编译器工具链,因为 Docker 也已将整个构建环境容器化。Docker + Wasm 是一个单独的工具,负责构建和运行 Wasm 应用程序。

 

随着 Docker 发起了容器革命(导致了云原生时代的到来),Docker在“多运行时”世界中支持 Wasm 的努力变得特别有意义。


Docker+Wasm 的发布非常有意义。我们不再生活在单运行时的世界中,我们有 Linux 容器、Windows 容器和 Wasm 容器。OCI 可以打包它们,@docker 可以构建和运行它们。—— Docker 联合创始人Solomon Hykes


Docker+Wasm 背后的技术主要来自开源社区。例如,Docker 依赖一个名为runwasi的 Containerd shim(最初由微软的DeisLabs创建)来启动 WasmEdge 并执行 Wasm 程序。

 

开源工作已远远超出了 Docker。例如,Red Hat 团队已经将Wasm运行时支持集成到OCI运行时crrun中。这使得整个Kubernetes栈能够完美支持WasmEdge应用。事实上,在 KubeCon 活动的前几天,Liquid Reply 团队已经演示了使用 WasmEdge 的Podman+Wasm

 

KubeCon 活动上还演示了其他 Wasm 应用,包括:AI推理应用、基于Dapr的微服务流式管道中的数据处理功能。现在,开发人员可以使用 Docker+Wasm 轻松地构建、分享和运行这些应用程序了。

 

原文链接:

https://www.infoq.com/news/2022/11/docker-webassembly/

2022-11-08 08:005557

评论

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

我看JAVA 之 AbstractStringBuilder & StringBuffer & StringBuilder

awen

Java 源码 jdk string

产品经理第五周:如何绘制流程图?

克比

Kafka 中所谓的 ‘零拷贝’ 技术到底是什么?

李尚智

Java kafka 程序员 架构 微服务

DBS

陈皓07

用 Selenium 搞定自动化测试项目,途牛搜机票。

梦想橡皮擦

28天写作 2月春节不断更

技术干货 | mPaaS 小程序高玩带你起飞:客户端预置小程序无视网络质量

蚂蚁集团移动开发平台 mPaaS

小程序 网络环境 mPaaS

LeetCode题解:120. 三角形最小路径和,动态规划(从上到下),JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

中核携手北京天源迪科完成电子商城二期项目,开创集团数字化采购新局面

DT极客

如何通过事务消息保障抢购业务的分布式一致性?

阿里巴巴中间件

阿里云 云原生 电商 消息队列 分布式柔性事务‘’

常见加密方式及Python实现

行者AI

加密

android开源!字节跳动Android岗经典面试真题,含泪整理面经

欢喜学安卓

android 程序员 面试 移动开发

341 万考生,除了图书馆他们去了这样一个地方

IoT云工坊

小程序 人工智能 物联网 云平台 24小时无人自习室

买基金赔掉一条裤衩之后,我又回来更文了

Java_若依框架教程

投资 理财 基金 茅台

MyCat集成MySQL完成数据库集群建设

831143

Java MySQL mycat

正月十五吃汤圆CountDownLatch

叫练

AQS join 共享锁 CountDownLatch 多线程高并发

医者,智也:智慧医院破茧时,翻开转型新一页

脑极体

未来赚钱的行业大预测

ES_her0

28天写作

Java中的String类型到底占用多大的内存空间?

冰河

Java 性能优化 string 高并发 内存空间

写给管理者的睡前故事

每天读本书

读书笔记 每天读本书

区块链与数字货币的发展到底有什么意义

CECBC

金融

Docker安装

Sakura

Docker

第五周作业:用例流程图

克比

荟聚·沉淀——百度大脑AI开放平台的2020年

百度大脑

Aspose word 转换为pdf 排版错位和数据丢失

blues199

Java Apache POI

单例设计模式

桃子

我决定输出一篇文章用于记录一个足足花了四小时才找到的BUG

LSJ

Java spring aop ProxyFactory proxyTargetClass

区块链能否一劳永逸地结束痛苦的选票争端?

CECBC

区块链

【得物技术】Web Components 初探

得物技术

Web API 得物技术 Web Component 组件

数字化转型提速,DataPipeline助力中石油产业大数据实时共享能力再提升

DataPipeline数见科技

数据融合

区块链打造“红娘链”,婚姻上链让爱更“牢固”

CECBC

婚姻

聊聊前端日志库在SaaS产品中的应用与设计

元三

大前端 SaaS

Docker 发布首个 WebAssembly 支持工具预览版_容器_Vivian Hu_InfoQ精选文章