WebAssembly,通常簡稱為 Wasm,是一種相對較新的技術,允許您編譯用 40 多種語言(包括 Rust、C、C++、JavaScript 和 Golang)編寫的應用程序代碼,并在沙盒環境中運行它" />

日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當前位置:首頁 > 科技  > 知識百科

Docker+Wasm 技術預覽簡介

來源: 責編: 時間:2023-08-07 16:30:39 224觀看
導讀 什么是 Wasm?
WebAssembly,通常簡稱為 Wasm,是一種相對較新的技術,允許您編譯用 40 多種語言(包括 Rust、C、C++、JavaScript 和 Golang)編寫的應用程序代碼,并在沙盒環境中運行它

什么是 Wasm?
WebAssembly,通常簡稱為 Wasm,是一種相對較新的技術,允許您編譯用 40 多種語言(包括 Rust、C、C++、JavaScript 和 Golang)編寫的應用程序代碼,并在沙盒環境中運行它。PPt28資訊網——每日最新資訊28at.com

最初的用例側重于在網絡瀏覽器中運行本機代碼,例如Figma、AutoCAD和Photoshop。事實上,fastq.bio在將其基于 Web 的 DNA 序列質量分析器轉換為 Wasm 時,速度提高了20 倍。迪士尼在 Wasm 之上構建了他們的Disney+ 應用程序開發工具包!瀏覽器中的好處顯而易見。PPt28資訊網——每日最新資訊28at.com

但由于WebAssembly 系統接口(WASI),Wasm 正在迅速傳播到瀏覽器之外。Vercel、Fastly、Shopify和Cloudflare等公司支持使用 Wasm 在邊緣運行代碼,而Fermyon正在構建一個平臺以在云端運行 Wasm 微服務。PPt28資訊網——每日最新資訊28at.com

為什么是Docker?
在 Docker,我們的目標是通過克服應用程序開發的復雜性來幫助開發人員將他們的想法變為現實。我們努力讓構建、共享和運行您的應用程序變得容易,無論底層技術如何。通過讓所有人都能使用容器,我們證明了我們有能力讓開發人員的生活更輕松,并被公認為最受歡迎的開發人員工具第一名。PPt28資訊網——每日最新資訊28at.com

我們將 Wasm 視為 Linux 容器的補充技術,開發人員可以根據用例選擇他們使用的技術(或兩者!)。隨著社區探索 Wasm 的可能性,我們希望使用您了解和喜愛的經驗和工具幫助使 Wasm 應用程序更容易開發、構建和運行。PPt28資訊網——每日最新資訊28at.com

Wasm 集成實際上是如何工作PPt28資訊網——每日最新資訊28at.com

1.我們正在利用我們最近的工作將圖像管理遷移到 containerd,因為它提供了使用與 OCI 兼容的工件和 containerd 墊片的能力。PPt28資訊網——每日最新資訊28at.com

2.我們與WasmEdge合作創建了一個 containerd shim。該 shim 從 OCI 工件中提取 Wasm 模塊并使用 WasmEdge 運行時運行它。PPt28資訊網——每日最新資訊28at.com

3.我們添加了聲明 Wasm 運行時的支持,這將允許使用這個新的 shim。PPt28資訊網——每日最新資訊28at.com

安裝預覽版后,我們可以運行以下命令來啟動示例 Wasm 應用程序:PPt28資訊網——每日最新資訊28at.com

docker run -dp 8080:8080 --name=wasm-example --runtime=io.containerd.wasmedge.v1 --platform=wasi/wasm32 michaelirwin244/wasm-examplePPt28資訊網——每日最新資訊28at.com

由于一些標志可能不熟悉,讓我們解釋一下它們在做什么:PPt28資訊網——每日最新資訊28at.com

--runtime=io.containerd.wasmedge.v1– 這會通知 Docker 引擎我們要使用 Wasm containerd shim 而不是標準的 Linux 容器運行時
--platform=wasi/wasm32– 這指定了我們要使用的圖像的架構。通過利用 Wasm 架構,我們不需要為不同的架構構建單獨的圖像。Wasm 運行時將完成將 Wasm 二進制文件轉換為機器指令的最后一步。
鏡像拉取后,runtime 會讀取ENTRYPOINT鏡像的 來定位并提取 Wasm 模塊。然后將該模塊加載到 Wasm 運行時、啟動并配置網絡。現在我們的機器上運行了一個 Wasm 應用程序!PPt28資訊網——每日最新資訊28at.com

這個特定的應用程序是一個簡單的 Web 服務器,上面寫著“Hello world!” 并將數據回顯給我們。為了驗證它是否正常工作,讓我們首先查看日志。PPt28資訊網——每日最新資訊28at.com

docker logs wasm-examplePPt28資訊網——每日最新資訊28at.com

Server is now running
我們可以通過打開http://localhost:8080或使用 curl 來獲取“Hello world”消息。PPt28資訊網——每日最新資訊28at.com

curl localhost:8080
我們的響應會給我們一條 Hello world 消息:PPt28資訊網——每日最新資訊28at.com

Hello world from Rust running with Wasm! Send POST data to /echo to have it echoed back to you
要將數據發送到 echo 端點,我們可以使用 curl:PPt28資訊網——每日最新資訊28at.com

curl localhost:8080/echo -d '{"message":"Hi there"}' -H "Content-type: application/json"
我們將看到發回以在響應中使用的數據:PPt28資訊網——每日最新資訊28at.com

{"message":"Hi there"}
要刪除應用程序,您可以像刪除任何其他 Docker 服務一樣刪除它:PPt28資訊網——每日最新資訊28at.com

docker rm -f wasm-example
新的集成意味著您可以與 Linux 容器一起運行 Wasm 應用程序(甚至使用 Compose)。PPt28資訊網——每日最新資訊28at.com

本文鏈接:http://www.www897cc.com/showinfo-119-2492-0.htmlDocker+Wasm 技術預覽簡介

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 使用 Docker 顯示上下文數據

下一篇: Docker 技術支持下一代桌面即服務 (DaaS)

標簽:
  • 熱門焦點
Top 主站蜘蛛池模板: 道孚县| 济宁市| 孟津县| 宜宾县| 安图县| 湖南省| 报价| 疏附县| 泰安市| 灵台县| 宝坻区| 永兴县| 泗水县| 巩义市| 六盘水市| 沂源县| 民丰县| 揭阳市| 芜湖县| 铜川市| 兴城市| 鹤岗市| 于都县| 大名县| 陆河县| 高淳县| 尼玛县| 廊坊市| 盘锦市| 安岳县| 依安县| 宜城市| 客服| 米林县| 策勒县| 会理县| 驻马店市| 青铜峡市| 安仁县| 德兴市| 赤水市|