wslc(WSL Containers)でDocker Desktop不要に|VS Code Dev Containers連携まで全手順

Windows でコンテナ開発をしていると、「Docker Desktop を起動し忘れていてコンテナが動かない」「Docker Desktop のライセンス費用が発生している」「常駐プロセスが重い」という悩みを抱えることがあるのではないでしょうか。

2026年の Microsoft Build で、そうした課題を根本から解決する可能性を持つ機能が発表されました。WSL(Windows Subsystem for Linux)の拡張機能として追加された「WSL Containers」、通称 wslc です。

この記事では、wslc の導入手順から、VS Code の Dev Containers と連携してコンテナ開発環境を構築するところまでを、実際の検証結果をもとに解説します。2026年6月時点ではパブリックプレビュー段階ですが、Dev Containers との連携は筆者の環境で問題なく動作することを確認しています。

この記事で行うこと

  • wslc(WSL Containers)の概要と Docker Desktop との違いを理解する
  • wsl --update --pre-release で wslc を導入する
  • VS Code の Dev Containers 拡張機能から wslc を使ってコンテナ環境を起動する
  • 導入時に発生しやすいトラブルの対処法を確認する

前提条件

項目内容
OSWindows 10/11(最新版推奨)
WSLWSL 2 インストール済み
VS Code最新版インストール済み
Dev Containers 拡張機能0.462.0-pre-release 以降(後述)
管理者権限必要(WSL の更新時)
Docker Desktopインストール不要(この記事では使用しません)

WSL 2 がまだインストールされていない場合は、先に WSL の公式ドキュメントを参照してください。

wslc(WSL Containers)とは

wslc は、Microsoftが2026年のMicrosoft Buildで発表したWSLの新機能「WSL Containers」のCLIツールです。Windowsネイティブで直接Linuxコンテナを実行できる仕組みで、次のような特徴があります。

  • デーモン常駐なし:dockerd のようなバックグラウンドプロセスを必要とせず、軽量に動作します
  • OCI互換:Docker Hub などの既存のコンテナイメージをそのまま利用できます
  • Docker互換コマンド:wslc runwslc pswslc build など、Docker に近い操作感で使えます
  • Windows標準機能:追加ライセンス料なしで利用できます(プレビュー期間中)

Virtiofs による高速なファイルアクセス、VPN環境との互換性を高める Consomme ネットワーク、CDI経由のGPUパススルーなども含まれており、Docker Desktop の代替として本格的に設計されていることがわかります。

2026年6月時点では WSL バージョン 2.9.3 以降に含まれるパブリックプレビュー機能です。

Docker Desktop との比較

項目Docker Desktopwslc(WSL Containers)
料金企業規模によっては有料無料(Windowsの機能)
常駐デーモン必要(dockerd)不要
起動の速さ遅い(GUIアプリ起動が必要)速い
OCI互換ありあり
Docker Compose対応現時点では未対応
VS Code Dev Containers対応(公式)対応(0.462.0-pre-release 以降)
成熟度安定版パブリックプレビュー

手順1:WSL をプレリリース版に更新する

まず PowerShell を管理者として起動します。スタートメニューで「powershell」と入力し、「管理者として実行」を選択してください。

管理者権限の PowerShell が開いたら、次のコマンドを実行します。

wsl --update --pre-release

更新が完了したら、WSL をシャットダウンして設定を反映させます。

wsl --shutdown

手順2:wslc コマンドが認識されるか確認する

ターミナルを完全に閉じてから、新しく開き直してください。PowerShell や Windows Terminal を開き直さずにそのまま実行すると、PATH が更新前のままでコマンドが認識されないことがあります(詳しくは後述のトラブルシューティングを参照)。

新しいターミナルで次のコマンドを実行し、バージョンが表示されれば導入成功です。

wslc --version

筆者の環境では以下の出力が得られました。

2.9.3.0

手順3:VS Code Dev Containers 拡張機能をプレリリース版に切り替える

VS Code の Dev Containers 拡張機能は、バージョン 0.462.0-pre-release 以降から wslc に対応しています。標準版(安定版)のままでは動作しないため、拡張機能をプレリリース版に切り替える必要があります。

  • VS Code の左側バーにある「拡張機能」アイコンをクリックします
  • 検索欄に「Dev Containers」と入力します
  • 「Dev Containers」が表示されたら選択し、詳細画面を開きます
  • 右側の設定アイコン(歯車マーク)をクリックし、「Switch to Pre-Release Version」をクリックします

インストール後は VS Code を再起動してください。

手順4:VS Code の settings.json に dockerPath を設定する

VS Code に wslc をコンテナランタイムとして認識させるため、設定ファイルを変更します。

コマンドパレット(Ctrl + Shift + P)を開き、「Open User Settings (JSON)」と入力して選択します。開いた settings.json に以下の行を追記してください。

{
  "dev.containers.dockerPath": "wslc"
}

すでに他の設定がある場合は、既存の波カッコ内に追加してください。

手順5:devcontainer.json を作成してコンテナを起動する

Dev Containers を使うには、プロジェクトフォルダに .devcontainer/devcontainer.json というファイルを用意する必要があります。

プロジェクトフォルダ(例: C:\projects\myapp)の直下に .devcontainer フォルダを作成し、その中に devcontainer.json を作成します。

{
  "name": "wslc-test",
  "image": "mcr.microsoft.com/devcontainers/base:ubuntu"
}

ファイルを保存したら、VS Code でそのプロジェクトフォルダを開きます。コマンドパレット(Ctrl + Shift + P)を開き、「Dev Containers: Reopen in Container」を選択します。

初回はイメージのプル(ダウンロード)が発生するため、数分かかる場合があります。

手順6:コンテナ内に入れたことを確認する

コンテナへの接続が成功すると、VS Code の左下に青いバッジが表示され、「開発コンテナー: wslc-test」のような文字が表示されます。

筆者の環境では、以下の確認コマンドを実行してコンテナ内に入れていることを検証しました。

OS情報を確認します。

cat /etc/os-release

出力結果:

PRETTY_NAME="Ubuntu 26.04 LTS"
NAME="Ubuntu"
VERSION_ID="26.04"
VERSION="26.04 LTS (Resolute Raccoon)"
VERSION_CODENAME=resolute
ID=ubuntu
ID_LIKE=debian

カーネルバージョンを確認します。

uname -a

出力結果:

Linux 79e379e8b616 6.18.35.2-microsoft-standard-WSL2 #1 SMP PREEMPT_DYNAMIC Wed Jun 17 23:14:00 UTC 2026 x86_64 GNU/Linux

Docker Desktop が起動していない状態で、Ubuntu 26.04 LTS(Resolute Raccoon)のコンテナ内に正常に入れていることを確認できました。

うまくいかない場合の確認ポイント

wslc --version でコマンドが見つからないと言われる

WSL を更新した直後、PowerShell や Windows Terminal を開いたまま確認すると、環境変数の PATH が古いままでコマンドが認識されないことがあります。ターミナルを完全に閉じてから再度開き直してください。

Dev Containers の起動に失敗する

次の点を順番に確認してください。

  • Dev Containers 拡張機能がプレリリース版(0.462.0-pre-release 以降)になっているか
  • settings.json に "dev.containers.dockerPath": "wslc" が正しく記述されているか
  • .devcontainer/devcontainer.json が正しいフォルダ構成で作成されているか
  • wslc --version がターミナルで正常に出力されるか

また、Docker Desktop が起動している場合はいったん停止してから試してみてください。競合が発生する場合があります。

イメージのプル中にエラーになる

初回はイメージのダウンロードに時間がかかります。ネットワーク接続を確認してから、再度「Reopen in Container」を試してみてください。

wslc に戻す方法・設定を元に戻す方法

wslc を試したあとで Docker Desktop に戻したい場合は、settings.json の dev.containers.dockerPath の行を削除するか、値を docker に変更してください。

{
  "dev.containers.dockerPath": "docker"
}

よくある質問

wslc は Docker Compose に対応していますか?

2026年6月時点のパブリックプレビュー版では、Docker Compose への対応は限定的です。docker-compose.yml を多用している環境では、そのままの移行は難しい場合があります。シンプルな単一コンテナ構成の検証から始めることをおすすめします。

Docker Desktop と wslc を共存させることはできますか?

技術的には両方インストールされた状態にできますが、dev.containers.dockerPath の設定でどちらを使うか切り替えることになります。同時に両方を動かすと競合が発生する可能性があるため、使用時はどちらか片方を有効にするのが安全です。

wslc はいつ正式リリースになりますか?

2026年6月時点では公式な正式リリース日は発表されていません。パブリックプレビューとして機能が拡充されており、今後の WSL アップデートで順次改善が予定されています。

wslc は企業環境でも使えますか?

MDM(Mobile Device Management)やグループポリシーによる管理に対応しているため、企業の IT 部門による一元管理が可能です。ただし、プレビュー段階の機能であるため、本番の開発環境への導入前に十分な検証を行うことをおすすめします。

wslc で GPU は使えますか?

CDI(Container Device Interface)経由のGPUパススルーに対応しており、PyTorchやCUDAを使ったAI/ML系のワークロードでも動作することが発表されています。

まとめ

この記事では、wslc(WSL Containers)を導入してVS Code Dev Containersと連携する手順を解説しました。

筆者の環境では、Docker Desktop を一切起動しない状態で、Dev Containers が Ubuntu 26.04 LTS のコンテナ内に正常に接続できることを確認しました。設定変更は settings.json の1行と、Dev Containers 拡張機能のプレリリース版への切り替えだけで済むため、既存の Dev Containers 環境に対して非常にスムーズに適用できます。

2026年6月時点ではパブリックプレビューであるため、Docker Compose など一部の機能には対応していない点に注意が必要です。ただし、シンプルな単一コンテナ構成の Dev Containers 環境であれば、今すぐ Docker Desktop を置き換える候補として十分に検討できる段階に来ていると感じています。

まずはテスト用のプロジェクトで試してみることをおすすめします。

参考情報