使用Visual Studio的Docker工具箱 - 未启用卷共享

时间:2018-04-29 09:34:55

标签: visual-studio docker .net-core virtualbox docker-toolbox

我试图在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下安装了默认卷,因此我的项目文件应该复制到此文件夹下的某处,以防我不想安装任何其他卷。所以我把它们复制到了那里。

当我检查虚拟框的设置时,似乎共享了文件夹:

Virtual box settings.

我甚至可以使用命令行进入此文件夹,但仍然无法解决此问题。有关于此的任何想法吗?

5 个答案:

答案 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)

下面的设置帮助我摆脱了这个错误。检查您要共享的驱动器,然后单击“应用”。这可能会要求您输入网络凭证,以防其弹出。

Docker settings

谢谢, 拉克什

答案 2 :(得分:0)

以我为例,事实证明我已更改了Windows密码,而docker无法访问。 所以只是

  1. 取消选中共享驱动器
  2. 应用
  3. 再次检查。输入密码
  4. 重新启动docker

答案 3 :(得分:0)

我通过在Powershell中运行以下命令来修复它:

docker network create nat

答案 4 :(得分:0)

尝试将Azure Function应用发布到Container Registry时遇到相同的问题。 适用于Windows的Docker桌面 2.3的较新版本具有新界面。我必须去资源|文件共享并添加一个新文件夹。这样就解决了这个问题...