如何配置.NET Aspire在VS中使用WSL Ubuntu的Docker而非Docker Desktop
配置.NET Aspire使用WSL Ubuntu中的Docker实例
前置检查
先确保WSL Ubuntu中的Docker服务正常运行且用户权限配置正确:
- 打开WSL终端,执行命令启动Docker服务并设置开机自启:
sudo systemctl start docker sudo systemctl enable docker - 将当前用户加入
docker组,避免执行Docker命令需要sudo:
执行后退出WSL终端,重新打开使权限生效。sudo usermod -aG docker $USER
配置Windows环境变量指向WSL Docker
让.NET Aspire通过环境变量找到WSL中的Docker实例:
- 打开Windows「系统属性」→「高级」→「环境变量」。
- 在「系统变量」区域点击「新建」,添加变量:
- 变量名:
DOCKER_HOST - 变量值:
unix://\\wsl$\<你的WSL发行版名称>\run\docker.sock替换
<你的WSL发行版名称>为实际名称(比如你的是Ubuntu,就写成unix://\\wsl$\Ubuntu\run\docker.sock)
- 变量名:
- 点击「确定」保存配置,重启Visual Studio使环境变量生效。
配置Visual Studio调试环境
- 打开你的Aspire项目,在Visual Studio的调试目标下拉菜单中,选择「WSL: Ubuntu」(对应你的WSL发行版)。
- 确保项目的调试配置未指定使用Docker Desktop相关选项。
验证配置
打开Windows命令提示符或PowerShell,执行docker info,如果能正常返回Docker系统信息,说明Windows已成功连接到WSL中的Docker。此时运行Aspire项目,「Container runtime 'docker' could not be found」的警告应该会消失。
内容的提问来源于stack exchange,提问作者Joseph Wambura
相关产品推荐
相关产品推荐

