WSL と wslc のセットアップ

以下の手順に従って、Windows に WSL をセットアップし、wslc を利用できる状態にします。

1. WSL と Ubuntu のインストール

まず WSL 本体と Linux ディストリビューションをインストールします。ディストリビューションは、ソース コードの編集や Git 操作を行う作業環境として使用します。

PowerShell または Command Prompt で以下のコマンドを実行します。WSL を初めて導入する PC では、管理者として実行してください (WSL 本体が導入済みの PC では、ディストリビューションの追加は一般ユーザーでも実行できます)。公式の参考ページはこちらです。

wsl --install -d Ubuntu-26.04
下記のように出力されれば成功です。
ダウンロードしています: Ubuntu 26.04 LTS
インストールしています: Ubuntu 26.04 LTS
ディストリビューションが正常にインストールされました。'wsl.exe -d Ubuntu-26.04' を使用して起動できます
Ubuntu-26.04 を起動しています...
Provisioning the new WSL instance Ubuntu-26.04
This might take a while...
Create a default Unix user account: <Windows のユーザー名>

注意: 初回 WSL をインストールされた場合、Windows を再起動する必要があります。再起動後、再度 PowerShell または Command Prompt で上記のコマンドを実行してください。

操作画面イメージ

参考: WSL を初めて導入する PC の画面 (再起動を求められる例)

注意: この画像は旧版の撮影で、Ubuntu 24.04 と古い WSL のバージョンが表示されています。初回導入時に再起動を求められる流れの参考としてご覧ください。

2. ユーザー情報の設定

インストールが終わると Ubuntu が自動で起動し、ユーザーの作成に進みます。ウィンドウを閉じてしまった場合は、以下のコマンドで起動します。

wsl.exe -d Ubuntu-26.04

Ubuntu のユーザー ID とパスワードを聞かれますので入力します。今回のユーザー ID は appuser とします。

注意: ユーザー名の入力欄には、Windows のユーザー名があらかじめ入力されています。Backspace キーで消してから appuser と入力してください。

Provisioning the new WSL instance Ubuntu-26.04
This might take a while...
Create a default Unix user account: appuser
New password: ****
Retype new password: ****
下記のように出力されれば成功です。
New password:
Retype new password:
passwd: password updated successfully
usermod: no changes
appuser@<PC 名>:/mnt/c$
操作画面イメージ

注意: 起動直後のカレント ディレクトリは、起動元の Windows フォルダー (例: /mnt/c) になります。この状態で以降の git clone などを行うと Windows 側に保存されてしまうため、cd ~ でホーム ディレクトリに移動してください。最初からホーム ディレクトリで起動したい場合は wsl.exe -d Ubuntu-26.04 --cd ~ を使用します。

INFO: 既に別のディストリビューションがある PC では、Ubuntu-26.04 をインストールしても既定のディストリビューションは変わりません。wsl とだけ入力すると別のディストリビューションが開くため、常に -d Ubuntu-26.04 を付けるか、次のコマンドで既定を変更してください (任意)。

wsl --set-default Ubuntu-26.04

3. WSL を最新化して wslc を入手する

ここが今回の要となる手順です。 wslc は WSL の更新によって提供されます。PowerShell で以下を実行してください。

wsl --update

既に最新の場合は「Linux 用 Windows サブシステムの最新バージョンは既にインストールされています。」と表示されます。

更新後、WSL のバージョンを確認します。wslc を利用するには WSL バージョン 2.9.3 以降 (3.x を含む) が必要です。

wsl --version

出力の 1 行目に表示される WSL バージョン が 2.9.3 以降であることを確認してください。

操作画面イメージ

INFO: GitHub の microsoft/WSL リリース ページから最新リリースを直接ダウンロードすることもできます。

更新が完了すると、以下の 2 つが利用可能になります。

No 提供されるもの 内容
1 WSL containers CLI wslc.exe により、Windows 上で Linux コンテナーを直接ビルド・実行・デプロイできます。組み込みの別名 container.exe でも同じコマンドを実行できます。
2 WSL containers API Windows ネイティブ アプリケーションから、プログラム的に Linux コンテナーを実行する機能にアクセスできます。

4. 動作確認 — 最初のコンテナーを実行する

wslc が使える状態になったか確認します。PowerShell から以下のコマンドを実行してください。

  • 使い捨てのコンテナーでコマンドを実行します。

    wslc run --rm -it ubuntu:latest bash -c "echo Hello world from WSL container!"
    

    初回は「イメージ ‘ubuntu:latest’ が見つかりません。プルしています」と表示され、イメージが取得されてから実行されます。

  • Web サーバーをバックグラウンドで実行し、ホストの 8080 番ポートをコンテナーの 80 番ポートに発行します。

    wslc run -d --rm -p 8080:80 --name web nginx
    
  • 実行中の Web サーバーにコンテンツを要求します。

    curl.exe http://localhost:8080
    
  • 実行中のコンテナーを一覧表示します。

    wslc container list
    
  • 実行中のコンテナー内で追加のコマンドを実行します。

    wslc exec web cat /etc/os-release
    
  • コンテナーを停止します。

    wslc container stop web
    

    --rm を付けて起動しているため、停止するとコンテナーは自動で削除されます (直後に wslc container list -a を実行しても表示されません)。

操作画面イメージ

INFO: -p 8080:80 で発行したポートは、既定で 127.0.0.1:8080 にバインドされます (wslc container list に 127.0.0.1:8080->80/tcp と表示されます)。そのため、他の PC からはアクセスできません。既定値は設定ファイル (settings.yaml) の defaultBindingAddress で決まります。設定ファイルについては、後述の「6. ストレージの配置を変更する」を参照してください。

また、日本語環境では wslc container list の見出しがずれ、IMAGE 列が「画像」と表示されます。これは製品側の表示です。

ここまで成功すれば、Windows 上で Linux コンテナーを実行する環境が整っています。 Docker Desktop も Docker Engine のインストールも行っていないことに注目してください。

5. コンテナー環境の状態を確認する

GA で追加された wslc system info を使うと、コンテナー環境の状態を一目で確認できます。

wslc system info
操作画面イメージ

また、コンテナーのアクティビティをリアルタイムに監視したい場合は wslc events を使用します。

wslc events

INFO: これらは GA リリースで追加されたコマンドです。この他にも wslc container restart (実行中コンテナーの再起動)、wslc container cp (tar アーカイブ経由でのファイル入出力)、wslc network connect / wslc network disconnect (コンテナーのネットワークへの接続・切断)、コンテナー ヘルスチェック、--stop-timeout (-1 で無限)、--mount などが追加されています。完全な変更履歴はリリース ページを参照してください。

6. ストレージの配置を変更する (任意)

既定の wslc セッションのストレージは %LOCALAPPDATA%\wslc\sessions に作成されます (実体は %LOCALAPPDATA%\wslc\sessions\wslc-cli-<ユーザー名>\storage.vhdx)。GA では、このストレージ パスを設定で変更できるようになりました。システム ドライブの空き容量が少ない場合は、別のドライブを指定してください。

  1. 以下のコマンドを実行します。設定ファイル %LOCALAPPDATA%\wslc\settings.yaml が (全項目がコメントアウトされた状態で) 作成され、既定のエディターで開きます。設定ファイルのパスは wslc system info の出力でも確認できます。

    wslc settings
    
  2. session: の下にある # storagePath: default を、たとえば次のように変更して保存します。

    session:
      storagePath: D:\data
    

注意: 既存のストレージは移動されません。新しい場所に空のセッションが作成されるため、イメージは取得し直しになります。

INFO: 同じ設定ファイルでは、cpuCount / memorySize / maxStorageSize / defaultBindingAddress (ポート発行時の既定のバインド アドレス) / hostLoopback (コンテナーから Windows ホストに接続するためのホスト名。既定は host.wslc.internal) / idleTimeout も設定できます。hostLoopback は「ローカル AI タスク」のステップで使用します。

INFO: 各 wslc セッションは独自のストレージ VHD を持ち、そこにイメージ・コンテナー・ネットワーク・ボリュームといったセッションの状態が保存されます。


次のステップでは、コンテナー ランタイムとしての wslc の位置づけを確認し、compose が必要な場合の代替手順を説明します。