我试图在Visual Studio 2017上运行一个docker支持,用于在linux容器上运行的.net core 2.0 web应用程序。我在使用win 7操作系统的机器上工作,所以我必须使用带有虚拟盒的Docker工具箱。我已经检查了这个问题:How to get docker toolbox to work with .net core 2.0 project,但在尝试使用VS运行时,我遇到了以下问题:
未启用卷共享。在docker ce中启用卷共享 用于Windows设置
到目前为止,我知道在C:\ Users下安装了默认卷,因此我的项目文件应该复制到此文件夹下的某处,以防我不想安装任何其他卷。所以我把它们复制到了那里。
当我检查虚拟框的设置时,似乎共享了文件夹:
我甚至可以使用命令行进入此文件夹,但仍然无法解决此问题。有关于此的任何想法吗?
答案 0 :(得分:3)
最后我跑了。从VS发出的错误消息非常误导,它与卷共享无关。最终我意识到问题在于运行调试器,因为当我使用ctrl + F5运行解决方案时,一切正常并且容器正确启动。仅在使用F5运行并尝试连接调试器时才会出现问题。
然后我在控制台输出中找到了一些线索。 VS尝试使用名为GetVsDbg.ps1
的PowerShell脚本下载一些用于调试容器的工具。运行此脚本时,我可能会发现以下错误:
Add-Type:无法添加类型。大会 ' System.IO.Compression.FileSystem'无法找到。
最后,我通过更新powershell版本修复了这个问题,这个版本与我机器上安装的.net框架发生了冲突。这是链接:
https://www.microsoft.com/en-us/download/details.aspx?id=40855
答案 1 :(得分:1)
答案 2 :(得分:0)
以我为例,事实证明我已更改了Windows密码,而docker无法访问。 所以只是
答案 3 :(得分:0)
我通过在Powershell中运行以下命令来修复它:
docker network create nat
答案 4 :(得分:0)
尝试将Azure Function应用发布到Container Registry时遇到相同的问题。 适用于Windows的Docker桌面 2.3的较新版本具有新界面。我必须去资源|文件共享并添加一个新文件夹。这样就解决了这个问题...