WSL 3.0は「WSL3」ではない|wslcで、Docker Desktopなしに Linux のコンテナを動かすまで

ノートパソコンの画面の中で、小さな箱がいくつか積み重なって動いているイメージ図 ITライフハック
この記事は約7分で読めます。
当ページはプロモーションが含まれています

9月29日に、WSL のバージョン 3.0.1 が出ました。
「WSL 3.0」と聞くと、WSL2 の次の世代、つまり「WSL3」が出たように見えます。でも、そうではありません。中身は WSL2 のままで、その上に、Linux のコンテナを動かす機能(WSL container)が正式に足されました。

この記事では、何が変わったのかを整理して、実際に Windows で入れて Ubuntu のコンテナを動かすところまで試します。途中で1回つまずいたので、そこも書いておきます。

スポンサーリンク

「WSL3」という新しい世代は、ありません

6月の Microsoft の開発者向けイベント(Build 2026)で、WSL container が発表されました。略して「WSLc」と書かれたことから、一部のニュースで「WSL 3」と紹介されて広まりました。
これに対して、WSL を担当する Microsoft の Craig Loewen さんが、6月23日に X で「WSL 3 というものは無い」と否定しています。

今回の「3.0」は、WSL というソフトの版番号です。WSL1 と WSL2 のような仕組みの違いではありません。
Microsoft の公式の説明でも、WSL の種類は今も WSL1 と WSL2 の2つだけです。

Windows の上に WSL2 の仕組みがあり、その上にディストリビューションと WSL container が並んで載っていることを示した図

スポンサーリンク

WSL 3.0.1 で変わったこと

変わったこと 中身
WSL container が正式版に wslc という新しいコマンドで、Linux のコンテナを作る、動かす、止める
Windows のファイルを読むのが速く virtiofs という仕組みに変わり、約2倍速くなったと発表されている
ネットワークの仕組みが新しく Linux 側の通信を Windows 経由で流すので、VPN やプロキシを使っていても通りやすい
メモリの返し方 使い終わったメモリを、少しずつ Windows に返すようになった
会社のPC向けの管理 Intune で、コンテナを使えるかどうかや、イメージを取ってくる先を決められる

いちばん大きいのは、Docker Desktop を入れなくても、コンテナを動かせるようになったことです。
Windows 10 と Windows 11 のどちらでも使えます。

入れてみる

WSL を使っていない PC では、–update が使えない

最初に、WSL を入れていない PC で、更新のつもりでこう打ちました。

wsl --update

返ってきたのは、使い方の説明だけでした。

使用方法: wsl.exe [Argument]

引数:

    --install <Options>
        Linux 用 Windows サブシステムの機能をインストールします。
    ...
    --list, -l [Options]
    --status
    --help

一覧に --update がありません。
Windows には、WSL を入れる前から小さい wsl.exe が入っています。これは「WSL を入れる」ためのもので、更新の機能を持っていません。なので、先に WSL 本体を入れる必要があります。

WSL 本体を入れる

PowerShell を管理者として開いて、WSL 本体だけを入れます。Ubuntu などは、ここでは入れなくてかまいません。

wsl --install --no-distribution

再起動を求められたら、再起動します。
★要確認:実際にこのコマンドで入れたか、再起動が必要だったか(違ったら、やった手順に直す)

すでに WSL を使っている PC なら、wsl --update で 3.0.1 に上がります。

バージョンを確かめる

wsl --version
WSL バージョン: 3.0.1.0
カーネル バージョン: 6.18.40.1-1
WSLg バージョン: 1.0.79
MSRDC バージョン: 1.2.7214
Direct3D バージョン: 1.611.1-81528511
DXCore バージョン: 10.0.26100.1-240331-1435.ge-release
Windows バージョン: 10.0.22621.4317

WSL のバージョンが 3.0.1 以上になっていれば大丈夫です。中の Linux のカーネルは 6.18 でした。
試した PC は Windows 11(22H2)です。

wslc が動くか確かめる

wslc system info
クライアント:
WSL バージョン: 3.0.1.0
カーネル バージョン: 6.18.40.1-1
Direct3D バージョン: 1.611.1-81528511
DXCore バージョン: 10.0.26100.1-240331-1435.ge-release
Windows バージョン: 10.0.22621.4317
設定ファイル: C:\Users\USER\AppData\Local\wslc\settings.yaml

サーバー:
セッション マネージャーのバージョン: 3.0.1
セッション: 0

「サーバー」の欄が出ていれば、コンテナを動かす準備ができています。
設定は、ユーザーのフォルダーの中の settings.yaml に置かれるようです。

Ubuntu のコンテナに入る

wslc run --rm -it ubuntu:latest
イメージ 'ubuntu:latest' が見つかりません。プルしています
latest: Pulling from library/ubuntu
4e07a0f12b2c: Pull complete
06ad70e463aa: Pull complete
Digest: sha256:3595d7fc4286a33fad0fd853a4063e654287a9c3787437d7937c94ca3f7a804e
Status: Downloaded newer image for ubuntu:latest
root@db94d4c0ab7e:/#

PowerShell で wsl --version、wslc system info、wslc run を順に実行した画面。WSL のバージョンは 3.0.1.0 で、最後に Ubuntu のコンテナに入っている

手元に Ubuntu のイメージが無かったので、自動で取ってきてから、コンテナの中に入りました。最後の行の root@…:/# が、コンテナの中の Linux です。
Docker Desktop は入れていません。WSL だけで、ここまで来ました。

コマンドの意味は、次のとおりです。

部分 意味
run コンテナを作って動かす
--rm 抜けたら、コンテナを自動で消す
-it キーボードで操作できるようにする
ubuntu:latest 使うイメージ(Ubuntu の最新版)

中で何か打ってみて、exit で抜けます。--rm を付けたので、抜けるとコンテナは消えます。取ってきたイメージは残るので、2回目からはすぐに入れます。

Docker を使ったことがある人なら、コマンドの形がほぼ同じなのが分かると思います。イメージも、Docker Hub のものがそのまま使えます。

まだできないこと

  • Docker Compose が使えない。 いくつかのコンテナをまとめて動かすファイル(compose.yaml)は、まだ読めません。いちばん要望が多い機能で、時期は未定です
  • --privileged(コンテナに強い権限を与える指定)が、まだ無い
  • VS Code の Dev Containers とも連携しますが、まだ荒いところがあると報告されています

Compose を使っている人は、しばらく Docker Desktop と併用することになります。Docker Desktop も WSL の上で動いているので、今回の速度の改善は、Docker Desktop を使う人にも効きます。

まとめ

  • WSL 3.0.1 は、WSL の版番号。「WSL3」という新しい世代ではない
  • 中身は WSL2 のままで、Linux のコンテナを動かす wslc が正式に入った
  • WSL を入れていない PC では wsl --update が使えない。先に wsl --install --no-distribution で本体を入れる
  • wslc run --rm -it ubuntu:latest で、Docker Desktop なしに Ubuntu のコンテナに入れた
  • Docker Compose は、まだ使えない

2026年10月2日時点で、WSL 3.0.1 を Windows 11(22H2)で試した内容です。機能は更新で変わることがあります。

参考:
WSL containers is now generally available(Windows Developer Blog)
Release 3.0.1(microsoft/WSL)
WSL container is now available for public preview(Windows Command Line)

タイトルとURLをコピーしました