Windows Latestは、「Windows 11 can now run Linux containers with WSL Containers, no Docker Desktop needed (hands on)」において、WSL Containers(プレビュー)の概要と実際の使用手順を解説した。
WSL ContainersはWSL 2の基盤を生かしつつ、Windows上でLinuxコンテナを直接扱えるようにする追加機能。Docker Desktopに依存していた従来の仕組みを、Windowsの標準機能として提供する。
WSL ContainersはCLIとAPIで構成
WSL Containersは、コマンドラインツールとAPIで構成される。前者はCLIコマンドの「wslc.exe」で、コマンド構文はDockerと互換性があり、wslc run、wslc build、wslc container stopなどが利用できる。Windows Latestによるとエイリアスコマンド「container.exe」も用意されており、どちらのコマンドも等しく利用できるという(公式ドキュメント:「Get started with containers on WSL | Microsoft Learn」)。
後者は開発者向けの「WSLコンテナAPI」で、NuGetパッケージとして配布される。アプリ開発者はこのAPIを使用することでLinuxコンテナを自身のアプリケーションに組み込むことができる(公式APIリファレンス:「WSL container API developer reference - WSL」)。
なお、WSL Containersを使用する場合、Hyper-Vをバックエンドとした単独の仮想マシン(VM)が取得される。共有VM内でコンテナを実行するDocker Desktopと比較すると効率は低下するが、アプリ間の分離が明確になるため製品開発には都合のよい側面もある。
GPUパススルーをサポート
GPUパススルーは仮想マシンからホストのGPUに直接かつ低遅延でアクセスする仮想化技術だ。これはAI開発およびAIモデルの実行にGPUの計算能力が欠かせないことから開発された技術で、WSL 2およびWSL Containersもサポートしている。WSL Containersにおける使用方法はDockerと同じで、オプション「--gpus all」を指定する。
WSL Containersに不足する機能
現在のWSL Containersはプレビューリリースの段階にあるが、すでにエンタープライズ製品に活用可能と評価されている。しかしながら完全とは言えず、Docker ComposeやDocker Scoutに相当する機能や、プラグインが利用できない課題を抱える。
とくにDocker Composeに相当する機能の不足が制約と言える。Windows Latestの調査によると、複数のコンテナで構成されるアプリ開発には適さず、実行には各コンテナの個別起動が必要とされる。
WSL Containersに追加された機能
これら課題が残されている一方で、新しいファイルシステム「virtiofs」および実験的ネットワークモード「Consomme」が導入されている。前者はコンテナとWindows間のファイルアクセス速度を高速化し、後者はLinuxネットワークトラフィックの中継機能を提供する。
Windows Latestの記者はConsommeについて「長年WSLユーザーを悩ませてきたVPNとプロキシの互換性の問題を解決することを目的としている」と述べ、Consommeを利用することでネットワークの課題解決が可能としている。なお、これら追加機能はWSL Containers専用で、WSLへの導入は将来の目標とのこと。
正式リリースは今秋予定
WSL ContainersはWindows 11の標準機能として提供される。大規模開発には向かないが、無償で利用できることから単独のコンテナ開発には有力な選択肢と言える。一般向けの提供開始時期は2026年秋ごろが予定されている。
WSL ContainersはDocker Desktopを完全に置き換えるものではないが、Windows標準でLinuxコンテナを利用できる環境を提供する点で、個人開発やシンプルなコンテナ利用のハードルを下げる存在になりそうだ。
