Alternative Architecture DOJO

オルターブースのクラウドネイティブ特化型ブログです。

WSL container(wslc)を使ったC#開発環境を整理する

こんにちは、MLBお兄さんこと松村です。
2026年も10月に突入し、MLB はポストシーズンが始まりました。我がニューヨーク・ヤンキースはワイルドカードゲームに連勝し、ディビジョンシリーズへと駒を進めました。まだ楽しい10月が続きます。


2026年9月29日、ついに WSL container (WSLc) の一般提供 (GA / General Availability) が開始されました。

blogs.windows.com

パブリックプレビューの時から WSLc を試していましたが、どうも自分の環境では Dev container がうまく起動しなかったため、GA を待ち望んでいました。
WSLc のコマンド等はドキュメントをなぞれば十分なので、C# 開発における具体的な使い方にフォーカスしてみます。

learn.microsoft.com

なお、下記の内容は WSL のバージョン 3.0.1 を前提としています。

wsl --update
更新プログラムを確認しています。
Linux 用 Windows サブシステムをバージョン 3.0.1 に更新しています。

Visual Studio 2026

※記事執筆時点(2026年10月1日)の Visual Studio 2026 18.10.3 を前提としています。

C# の統合開発環境である Visual Studio 2026 では、以前からコンテナーでの開発がサポートされています。

learn.microsoft.com

従来から Docker と Podman がサポートされており、Visual Studio のオプションからコンテナーツールを選択することができます。
ただし、まだ選択肢に WSLc は含まれていません。

コンテナーツールの設定次第ですが、プロジェクト起動時にコンテナーのウォームアップをするよう設定しておくと、WSLc でコンテナーのビルドが実行されます。
どうやらコンテナーツールを「自動」に設定しておくと、Docker が起動していない場合は WSLc が使用されるようです。

========== コンテナーの前提条件の確認中 ==========
Verifying that wslc is installed...
wslc is installed.
========== 必要なイメージをプルしています ==========
見つからないイメージを確認しています...
イメージをプルしています。このダウンロードを取り消すには、コマンド プロンプト ウィンドウを閉じます。
wslc pull mcr.microsoft.com/dotnet/aspnet:10.0
イメージの準備ができました。
========== WebApplication2のコンテナーをウォームアップしています ==========
コンテナーを起動しています...
wslc build -f "E:\source\tmp\dotnet\WebApplication2\WebApplication2\Dockerfile" -t webapplication2:dev --label "com.microsoft.created-by=visual-studio" --label "com.microsoft.visual-studio.project-name=WebApplication2" --target base  --build-arg "BUILD_CONFIGURATION=Debug" --build-arg "LAUNCHING_FROM_VS=true" "E:\source\tmp\dotnet\WebApplication2"
[base 1/2] FROM mcr.microsoft.com/dotnet/aspnet:10.0
[base 2/2] WORKDIR /app
exporting to image
  | exporting layers
  | writing image sha256:016ba31e50e6db4f964cd95010e94ba3c2f865f5ad083f7c295718735d25caf3
  | naming to docker.io/library/webapplication2:dev
C:\WINDOWS\System32\WindowsPowerShell\v1.0\powershell.exe -NonInteractive -NoProfile -WindowStyle Hidden -ExecutionPolicy RemoteSigned -File "C:\Users\yuta\AppData\Local\Temp\GetVsDbg.ps1" -Version vs2017u5 -RuntimeID linux-x64 -InstallPath "C:\Users\yuta\vsdbg\vs2017u5"
Info: Using vsdbg version '18.10.10709.3'
Info: Using Runtime ID 'linux-x64'
Info: Latest version of VsDbg is present. Skipping downloads
C:\WINDOWS\System32\WindowsPowerShell\v1.0\powershell.exe -NonInteractive -NoProfile -WindowStyle Hidden -ExecutionPolicy RemoteSigned -File "C:\Users\yuta\AppData\Local\Temp\GetVsDbg.ps1" -Version vs2017u5 -RuntimeID linux-musl-x64 -InstallPath "C:\Users\yuta\vsdbg\vs2017u5\linux-musl-x64"
Info: Using vsdbg version '18.10.10709.3'
Info: Using Runtime ID 'linux-musl-x64'
Info: Latest version of VsDbg is present. Skipping downloads
wslc run -dt -v "C:\Users\yuta\vsdbg\vs2017u5:/remote_debugger:rw" -v "C:\Users\yuta\AppData\Roaming\Microsoft\UserSecrets:/root/.microsoft/usersecrets:ro" -v "C:\Users\yuta\AppData\Roaming\Microsoft\UserSecrets:/home/app/.microsoft/usersecrets:ro" -v "C:\Users\yuta\AppData\Roaming\ASP.NET\Https:/root/.aspnet/https:ro" -v "C:\Users\yuta\AppData\Roaming\ASP.NET\Https:/home/app/.aspnet/https:ro" -v "C:\Program Files\Microsoft Visual Studio\18\Enterprise\MSBuild\Sdks\Microsoft.Docker.Sdk\tools\linux-x64\net6.0:/VSTools:ro" -v "C:\Program Files\Microsoft Visual Studio\18\Enterprise\Common7\IDE\CommonExtensions\Microsoft\HotReload:/HotReloadAgent:ro" -v "C:\Program Files\Microsoft Visual Studio\18\Enterprise\Common7\IDE\extensions\Microsoft\managedprojectsystem\HotReload:/HotReloadAgent2:ro" -v "E:\source\tmp\dotnet\WebApplication2\WebApplication2:/app:rw" -v "E:\source\tmp\dotnet\WebApplication2:/src/:rw" -v "E:\packages\nuget:/.nuget/fallbackpackages2:rw" -v "C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages:/.nuget/fallbackpackages:rw" -e "ASPNETCORE_LOGGING__CONSOLE__DISABLECOLORS=True" -e "ASPNETCORE_ENVIRONMENT=Development" -e "DOTNET_USE_POLLING_FILE_WATCHER=1" -e "NUGET_PACKAGES=/.nuget/fallbackpackages2" -e "NUGET_FALLBACK_PACKAGES=/.nuget/fallbackpackages;/.nuget/fallbackpackages2" -e "ASPNETCORE_HTTPS_PORTS=8081" -e "ASPNETCORE_HTTP_PORTS=8080" -P -l "com.microsoft.visualstudio.launch-url.path-query=/" --name WebApplication2 --entrypoint "dotnet" webapplication2:dev --roll-forward Major /VSTools/DistrolessHelper/DistrolessHelper.dll --wait 
3038f2e04125c8a7cad1c9a52ef669ca993232983a0c623634558025e3d3b7f0
コンテナーが正常に開始されました。
========== 完了 ==========

なおプロジェクトを開き直すと、既にイメージが存在するため、ひっそりとコンテナーのビルドに失敗します。ログは下記の通りです。

========== コンテナーの前提条件の確認中 ==========
Verifying that wslc is installed...
wslc is installed.
========== 必要なイメージをプルしています ==========
見つからないイメージを確認しています...
イメージをプルしています。このダウンロードを取り消すには、コマンド プロンプト ウィンドウを閉じます。
wslc pull mcr.microsoft.com/dotnet/aspnet:10.0
イメージの準備ができました。
========== WebApplication2のコンテナーをウォームアップしています ==========
コンテナーを起動しています...
wslc build -f "E:\source\tmp\dotnet\WebApplication2\WebApplication2\Dockerfile" -t webapplication2:dev --label "com.microsoft.created-by=visual-studio" --label "com.microsoft.visual-studio.project-name=WebApplication2" --target base  --build-arg "BUILD_CONFIGURATION=Debug" --build-arg "LAUNCHING_FROM_VS=true" "E:\source\tmp\dotnet\WebApplication2"
[base 1/2] FROM mcr.microsoft.com/dotnet/aspnet:10.0
[base 2/2] WORKDIR /app
[base 2/2] CACHED
exporting to image
  | exporting layers
  | writing image sha256:016ba31e50e6db4f964cd95010e94ba3c2f865f5ad083f7c295718735d25caf3
  | naming to docker.io/library/webapplication2:dev
wslc run -dt -v "C:\Users\yuta\vsdbg\vs2017u5:/remote_debugger:rw" -v "C:\Users\yuta\AppData\Roaming\Microsoft\UserSecrets:/root/.microsoft/usersecrets:ro" -v "C:\Users\yuta\AppData\Roaming\Microsoft\UserSecrets:/home/app/.microsoft/usersecrets:ro" -v "C:\Users\yuta\AppData\Roaming\ASP.NET\Https:/root/.aspnet/https:ro" -v "C:\Users\yuta\AppData\Roaming\ASP.NET\Https:/home/app/.aspnet/https:ro" -v "C:\Program Files\Microsoft Visual Studio\18\Enterprise\MSBuild\Sdks\Microsoft.Docker.Sdk\tools\linux-x64\net6.0:/VSTools:ro" -v "C:\Program Files\Microsoft Visual Studio\18\Enterprise\Common7\IDE\CommonExtensions\Microsoft\HotReload:/HotReloadAgent:ro" -v "C:\Program Files\Microsoft Visual Studio\18\Enterprise\Common7\IDE\extensions\Microsoft\managedprojectsystem\HotReload:/HotReloadAgent2:ro" -v "E:\source\tmp\dotnet\WebApplication2\WebApplication2:/app:rw" -v "E:\source\tmp\dotnet\WebApplication2:/src/:rw" -v "E:\packages\nuget:/.nuget/fallbackpackages2:rw" -v "C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages:/.nuget/fallbackpackages:rw" -e "ASPNETCORE_LOGGING__CONSOLE__DISABLECOLORS=True" -e "ASPNETCORE_ENVIRONMENT=Development" -e "DOTNET_USE_POLLING_FILE_WATCHER=1" -e "NUGET_PACKAGES=/.nuget/fallbackpackages2" -e "NUGET_FALLBACK_PACKAGES=/.nuget/fallbackpackages;/.nuget/fallbackpackages2" -e "ASPNETCORE_HTTPS_PORTS=8081" -e "ASPNETCORE_HTTP_PORTS=8080" -P -l "com.microsoft.visualstudio.launch-url.path-query=/" --name WebApplication2 --entrypoint "dotnet" webapplication2:dev --roll-forward Major /VSTools/DistrolessHelper/DistrolessHelper.dll --wait 
エンジンからのエラー情報: Conflict. The container name "/WebApplication2" is already in use by container "b02c8431ce4c01d49ab966f4b9826d90db2cc5c5c5a16d682fc0063e735ac52a". You have to remove (or rename) that container to be able to reuse that name.
エラー コード: ERROR_ALREADY_EXISTS
このエラーが予期しないものである場合は、既存の問題を検索するか、https://github.com/microsoft/WSL/issues で新しい問題を提出することを検討してください。
このコンテナー名は既に使用されています。競合しないコンテナー名を使用して再試行しています。
wslc run -dt -v "C:\Users\yuta\vsdbg\vs2017u5:/remote_debugger:rw" -v "C:\Users\yuta\AppData\Roaming\Microsoft\UserSecrets:/root/.microsoft/usersecrets:ro" -v "C:\Users\yuta\AppData\Roaming\Microsoft\UserSecrets:/home/app/.microsoft/usersecrets:ro" -v "C:\Users\yuta\AppData\Roaming\ASP.NET\Https:/root/.aspnet/https:ro" -v "C:\Users\yuta\AppData\Roaming\ASP.NET\Https:/home/app/.aspnet/https:ro" -v "C:\Program Files\Microsoft Visual Studio\18\Enterprise\MSBuild\Sdks\Microsoft.Docker.Sdk\tools\linux-x64\net6.0:/VSTools:ro" -v "C:\Program Files\Microsoft Visual Studio\18\Enterprise\Common7\IDE\CommonExtensions\Microsoft\HotReload:/HotReloadAgent:ro" -v "C:\Program Files\Microsoft Visual Studio\18\Enterprise\Common7\IDE\extensions\Microsoft\managedprojectsystem\HotReload:/HotReloadAgent2:ro" -v "E:\source\tmp\dotnet\WebApplication2\WebApplication2:/app:rw" -v "E:\source\tmp\dotnet\WebApplication2:/src/:rw" -v "E:\packages\nuget:/.nuget/fallbackpackages2:rw" -v "C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages:/.nuget/fallbackpackages:rw" -e "ASPNETCORE_LOGGING__CONSOLE__DISABLECOLORS=True" -e "ASPNETCORE_ENVIRONMENT=Development" -e "DOTNET_USE_POLLING_FILE_WATCHER=1" -e "NUGET_PACKAGES=/.nuget/fallbackpackages2" -e "NUGET_FALLBACK_PACKAGES=/.nuget/fallbackpackages;/.nuget/fallbackpackages2" -e "ASPNETCORE_HTTPS_PORTS=8081" -e "ASPNETCORE_HTTP_PORTS=8080" -P -l "com.microsoft.visualstudio.launch-url.path-query=/" --name WebApplication2 --entrypoint "dotnet" webapplication2:dev --roll-forward Major /VSTools/DistrolessHelper/DistrolessHelper.dll --wait 
エンジンからのエラー情報: Conflict. The container name "/WebApplication2" is already in use by container "b02c8431ce4c01d49ab966f4b9826d90db2cc5c5c5a16d682fc0063e735ac52a". You have to remove (or rename) that container to be able to reuse that name.
エラー コード: ERROR_ALREADY_EXISTS
このエラーが予期しないものである場合は、既存の問題を検索するか、https://github.com/microsoft/WSL/issues で新しい問題を提出することを検討してください。
コンテナーの準備中に重大ではないエラーが発生しました。プロジェクトは引き続き正常に機能します。エラー: エンジンからのエラー情報: Conflict. The container name "/WebApplication2" is already in use by container "b02c8431ce4c01d49ab966f4b9826d90db2cc5c5c5a16d682fc0063e735ac52a". You have to remove (or rename) that container to be able to reuse that name.
エラー コード: ERROR_ALREADY_EXISTS
このエラーが予期しないものである場合は、既存の問題を検索するか、https://github.com/microsoft/WSL/issues で新しい問題を提出することを検討してください。。

トラブルシューティングの詳細については、https://aka.ms/DockerToolsTroubleshooting にアクセスしてください

実際にコンテナーでビルドやデバッグを行うときも、コンテナーイメージの競合によりエラーが発生します。
同名のコンテナーイメージが存在する場合の回避が用意されていないようです。
まだ Visual Studio 2026 ではコンテナーを使った開発は難しいかもしれません。

デバッグ エラー

エンジンからのエラー情報: Conflict. The container name "/WebApplication2" is already in use by container "b02c8431ce4c01d49ab966f4b9826d90db2cc5c5c5a16d682fc0063e735ac52a". You have to remove (or rename) that container to be able to reuse that name.
エラー コード: ERROR_ALREADY_EXISTS
このエラーが予期しないものである場合は、既存の問題を検索するか、https://github.com/microsoft/WSL/issues で新しい問題を提出することを検討してください。。

トラブルシューティングの詳細については、https://aka.ms/DockerToolsTroubleshooting にアクセスしてください


Visual Studio 2026 Insiders

※記事執筆時点(2026年10月1日)の Visual Studio 2026 Insiders (12224.323) を前提としています。

Visual Studio 2026 Insiders ではオプションのコンテナーツールで WSLc を選択できるようになっています。

プロジェクト起動時にはコンテナーイメージのビルドが行われます。(同名のイメージが存在しない前提です)

========== コンテナーの前提条件の確認中 ==========
wslc がインストールされていることを確認しています...
wslc がインストールされています。
========== 必要なイメージをプルしています ==========
見つからないイメージを確認しています...
イメージをプルしています。このダウンロードを取り消すには、コマンド プロンプト ウィンドウを閉じます。
wslc pull mcr.microsoft.com/dotnet/aspnet:10.0
イメージの準備ができました。
========== WebApplication2のコンテナーをウォームアップしています ==========
コンテナーを起動しています...
wslc build -f "E:\source\tmp\dotnet\WebApplication2\WebApplication2\Dockerfile" -t webapplication2:dev --label "com.microsoft.created-by=visual-studio" --label "com.microsoft.visual-studio.project-name=WebApplication2" --target base  --build-arg "BUILD_CONFIGURATION=Debug" --build-arg "LAUNCHING_FROM_VS=true" "E:\source\tmp\dotnet\WebApplication2"
[base 1/2] FROM mcr.microsoft.com/dotnet/aspnet:10.0
[base 2/2] WORKDIR /app
[base 2/2] CACHED
exporting to image
  | exporting layers
  | writing image sha256:016ba31e50e6db4f964cd95010e94ba3c2f865f5ad083f7c295718735d25caf3
  | naming to docker.io/library/webapplication2:dev
wslc run -dt -v "C:\Users\yuta\vsdbg\vs2017u5:/remote_debugger:rw" -v "C:\Users\yuta\AppData\Roaming\Microsoft\UserSecrets:/root/.microsoft/usersecrets:ro" -v "C:\Users\yuta\AppData\Roaming\Microsoft\UserSecrets:/home/app/.microsoft/usersecrets:ro" -v "C:\Users\yuta\AppData\Roaming\ASP.NET\Https:/root/.aspnet/https:ro" -v "C:\Users\yuta\AppData\Roaming\ASP.NET\Https:/home/app/.aspnet/https:ro" -v "C:\Program Files\Microsoft Visual Studio\18\Insiders\MSBuild\Sdks\Microsoft.Docker.Sdk\tools\linux-x64\net6.0:/VSTools:ro" -v "C:\Program Files\Microsoft Visual Studio\18\Insiders\Common7\IDE\CommonExtensions\Microsoft\HotReload:/HotReloadAgent:ro" -v "C:\Program Files\Microsoft Visual Studio\18\Insiders\Common7\IDE\extensions\Microsoft\managedprojectsystem\HotReload:/HotReloadAgent2:ro" -v "E:\source\tmp\dotnet\WebApplication2\WebApplication2:/app:rw" -v "E:\source\tmp\dotnet\WebApplication2:/src/:rw" -v "E:\packages\nuget:/.nuget/fallbackpackages2:rw" -v "C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages:/.nuget/fallbackpackages:rw" -e "ASPNETCORE_LOGGING__CONSOLE__DISABLECOLORS=True" -e "ASPNETCORE_ENVIRONMENT=Development" -e "DOTNET_USE_POLLING_FILE_WATCHER=1" -e "NUGET_PACKAGES=/.nuget/fallbackpackages2" -e "NUGET_FALLBACK_PACKAGES=/.nuget/fallbackpackages;/.nuget/fallbackpackages2" -e "ASPNETCORE_HTTPS_PORTS=8081" -e "ASPNETCORE_HTTP_PORTS=8080" -P -l "com.microsoft.visualstudio.launch-url.path-query=/" --name WebApplication2 --entrypoint "dotnet" webapplication2:dev --roll-forward Major /VSTools/DistrolessHelper/DistrolessHelper.dll --wait 
c49b62aa5e50df998edd71556d93228695b86306ae4bca86960f7487d2434aa4
コンテナーが正常に開始されました。
========== 完了 ==========

デバッグ実行すると、コンテナーイメージの再ビルドが行われて、コンテナーが実行されます。
Visual Studio Insiders では WSLc を使った開発はできそうです。

wslc build -f "E:\source\tmp\dotnet\WebApplication2\WebApplication2\Dockerfile" -t webapplication2:dev --label "com.microsoft.created-by=visual-studio" --label "com.microsoft.visual-studio.project-name=WebApplication2" --target base  --build-arg "BUILD_CONFIGURATION=Debug" --build-arg "LAUNCHING_FROM_VS=true" "E:\source\tmp\dotnet\WebApplication2"
[base 1/2] FROM mcr.microsoft.com/dotnet/aspnet:10.0
[base 2/2] WORKDIR /app
[base 2/2] CACHED
exporting to image
  | exporting layers
  | writing image sha256:016ba31e50e6db4f964cd95010e94ba3c2f865f5ad083f7c295718735d25caf3
  | naming to docker.io/library/webapplication2:dev
wslc rm -f "e95169e515223e8fe00d204d7c07c1f14fd5d69fd0cc00412b794c8ea7a24376"
e95169e515223e8fe00d204d7c07c1f14fd5d69fd0cc00412b794c8ea7a24376
wslc run -dt -v "C:\Users\yuta\vsdbg\vs2017u5:/remote_debugger:rw" -v "C:\Users\yuta\AppData\Roaming\Microsoft\UserSecrets:/root/.microsoft/usersecrets:ro" -v "C:\Users\yuta\AppData\Roaming\Microsoft\UserSecrets:/home/app/.microsoft/usersecrets:ro" -v "C:\Users\yuta\AppData\Roaming\ASP.NET\Https:/root/.aspnet/https:ro" -v "C:\Users\yuta\AppData\Roaming\ASP.NET\Https:/home/app/.aspnet/https:ro" -v "C:\Program Files\Microsoft Visual Studio\18\Insiders\MSBuild\Sdks\Microsoft.Docker.Sdk\tools\linux-x64\net6.0:/VSTools:ro" -v "C:\Program Files\Microsoft Visual Studio\18\Insiders\Common7\IDE\CommonExtensions\Microsoft\HotReload:/HotReloadAgent:ro" -v "C:\Program Files\Microsoft Visual Studio\18\Insiders\Common7\IDE\extensions\Microsoft\managedprojectsystem\HotReload:/HotReloadAgent2:ro" -v "E:\source\tmp\dotnet\WebApplication2\WebApplication2:/app:rw" -v "E:\source\tmp\dotnet\WebApplication2:/src/:rw" -v "E:\packages\nuget:/.nuget/fallbackpackages2:rw" -v "C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages:/.nuget/fallbackpackages:rw" -e "ASPNETCORE_LOGGING__CONSOLE__DISABLECOLORS=True" -e "ASPNETCORE_ENVIRONMENT=Development" -e "DOTNET_USE_POLLING_FILE_WATCHER=1" -e "NUGET_PACKAGES=/.nuget/fallbackpackages2" -e "NUGET_FALLBACK_PACKAGES=/.nuget/fallbackpackages;/.nuget/fallbackpackages2" -e "ASPNETCORE_HTTPS_PORTS=8081" -e "ASPNETCORE_HTTP_PORTS=8080" -P -l "com.microsoft.visualstudio.launch-url.path-query=/" --name WebApplication2 --entrypoint "dotnet" webapplication2:dev --roll-forward Major /VSTools/DistrolessHelper/DistrolessHelper.dll --wait 
2cf57ff486841041f02879d1a89b3c6f50989fc1b992f4504a04855e47418f0c


Visual Studio Code Dev Containers

VS Code でも WSLc をコンテナーツールに指定することができます。

dev.containers.dockerPath の設定に wslc を指定します。

次に、以下のような C# 用の devcontainer.json を用意すると、WSLc で Dev container を起動することができます。

{
    "name": "C# (.NET)",
    "image": "mcr.microsoft.com/devcontainers/dotnet:2-10.0-noble",
    "features": {
        "ghcr.io/devcontainers/features/dotnet:2": {}
    }
}
[3558 ms] Start: Run: wslc version
[3649 ms] wslc 3.0.1.0
[3658 ms] Start: Run: wslc volume ls -q
[3767 ms] Start: Run: wslc ps -q -a --filter label=vsch.local.folder=e:\source\tmp\dotnet\WebApplication2\WebApplication2 --filter label=vsch.quality=stable
[3863 ms] Start: Run: wslc ps -q -a --filter label=devcontainer.local_folder=e:\source\tmp\dotnet\WebApplication2\WebApplication2 --filter label=devcontainer.config_file=e:\source\tmp\dotnet\WebApplication2\WebApplication2\.devcontainer\devcontainer.json
[4000 ms] Start: Run: wslc inspect --type container f5eb0f364173
[4127 ms] Start: Run: wslc ps -q -a --filter label=devcontainer.local_folder=e:\source\tmp\dotnet\WebApplication2\WebApplication2
[4230 ms] Start: Run: wslc inspect --type container f5eb0f364173
[4332 ms] Running Dev Containers CLI:   up --user-data-folder c:\Users\yuta\AppData\Roaming\Code\User\globalStorage\ms-vscode-remote.remote-containers\data --docker-path wslc --container-session-data-folder /tmp/devcontainers-e1fcc54f-dc29-435f-9bbe-e8fb026192011790900852176 --workspace-folder e:\source\tmp\dotnet\WebApplication2\WebApplication2 --workspace-mount-consistency cached --gpu-availability detect --id-label devcontainer.local_folder=e:\source\tmp\dotnet\WebApplication2\WebApplication2 --id-label devcontainer.config_file=e:\source\tmp\dotnet\WebApplication2\WebApplication2\.devcontainer\devcontainer.json --log-level debug --log-format json --config e:\source\tmp\dotnet\WebApplication2\WebApplication2\.devcontainer\devcontainer.json --default-user-env-probe loginInteractiveShell --mount type=volume,source=vscode,target=/vscode,external=true --mount type=bind,source=\\wsl.localhost\Ubuntu-26.04\mnt\wslg\runtime-dir\wayland-0,target=/tmp/vscode-wayland-15257675-73e4-47eb-b12a-4f5b47b5f8f0.sock--skip-post-create --update-remote-user-uid-default on --mount-workspace-git-root --terminal-columns 127 --terminal-rows 35 --include-configuration --include-merged-configuration

デバッグには C# Dev Kit 拡張機能が必要にはなりますが、Visual Studio と同じように開発を行うことができます。


現状では WSLc では Docker Compose はサポートされていませんが、ロードマップには入っているので、Windows においては Docker から WSLc に移行するハードルも下がってきていると感じます。


サービス一覧 www.alterbooth.com cloudpointer.tech www.alterbooth.com