「Rancher Desktop 1.13」で、WebAssemblyを実験的サポート開始
Dockerコンテナの開発環境「Rancher Desktop」でWebAssemblyがサポートされた。Spinフレームワークを用いることで実現する。これでDocker DesktopやPodman Desktopを含む主要な環境でWebAssemblyがサポートされる。
SUSEがオープンソースで開発し提供しているDockerコンテナの開発環境「Rancher Desktop」の最新バージョンとなる「Rancher Desktop 1.13.0」で、WebAssemblyが実験的にサポートされると発表されました。
We're proud to introduce Rancher Desktop v1.13
— Rancher (@Rancher_Labs) March 14, 2024
Starting this release, we've enabled experimental support for #WebAssembly workloads, leveraging the @spinframework from the folks @fermyontech
Learn how you can run #Wasm apps on Rancher Desktophttps://t.co/PzIpE83zwA
本バージョンではWebAssemlbyサポートはデフォルトでは有効になっていないため、ユーザーが明示的に設定画面でWebAssemblyサポートをオンにする必要があります。
すでにDocker DesktopやPodman Desktopは対応済み
Dockerコンテナの開発環境でのWebAssemblyサポートは、Docker DesktopやRed HatのPodman Desktopではすでに行われています。
参考:Docker DesktopがWebAssemblyランタイムを統合。コンテナと同様にWebAssemblyイメージを実行可能に
Docker DesktopでのWebAssemblyサポートは、コンテナランタイムのcontainerdにWebAssemblyをコンテナとして扱うShimである「runwasi」が統合されたことで実現されています。
参考:コンテナランタイムのcontainerdに、WebAssemblyをコンテナとして扱うための「runwasi」が統合。これからのコンテナランタイムはWebAssemblyと統合されていく
一方、Podman DesktopでのWebAssemblyサポートは、Podman Deskotpが採用しているコンテナランタイムである「crun」がWebAssembly拡張機能を通してWebAssemblyをサポートしていることで実現されています。
SpinフレームワークによるWebAssemblyサポート
今回のRancher DesktopによるWebAssemblyサポートは、ドキュメントによるとcontainerdでWebAssemblyを扱えるようにするShimの1つである「containerd-spinshim-v2」をバンドルし、WebAssemblyのためのフレームワークである「Spin」が備えているWebAssemblyランタイムを用いて実現しているようです。
またSpinフレームワークを用いることで、Rancher DesktopがバンドルしているKubernetesのディストリビューションであるk3sによるKubernetes上でWebAssemblyアプリケーションを実行できると説明されています。
前述の通り、すでにDocker Desktop、Podman DesktopはWebAssemblyをサポートしています。今回、Rancher DesktopもWebAssemblyサポートを開始したことで、コンテナ環境とWebAssembly環境の統合は明確なトレンドになっているように見えます。
関連記事
2024年9月。ByteCode Allianceから「Wasm OCI Artifact layout」仕様が登場しました。
あわせて読みたい
Publickeyが受けたDoS攻撃、これまでの経緯と対策まとめ
≪前の記事
自律型AIソフトウェアエンジニア「Devin」登場。Readmeを読んで環境構築、Print文を使ってデバッグなど