我正在Windows 10 Pro 10586上运行Docker for Windows Beta。我正在使用Visual Studio2015。我正在使用Visual Studio Tools for Docker版本0.21.0。
我在PowerShell中玩过Docker,我已经成功运行了hello-world
Docker镜像。
我创建了一个空的(hello world).net Core RC2 asp.net应用程序。我在IIS Express上很好地运行了该应用程序。然后,我使用适用于Visual Studio的Docker工具向项目添加了Docker支持。然后,我尝试在Docker容器中构建和运行该应用程序。但是我不断收到以下错误-Failed to run the command: "C:\Users\Duncan\Desktop\MVCAppExplorations\WebApplication1\src\WebApplication1\DockerTask.ps1 -Run -Environment Debug -Machine '' -OpenSite $False -RemoteDebugging $True".
我看过另一篇有关类似错误的文章。在那种情况下,错误更像是-Failed to run the command: "C:\Users\Duncan\Desktop\MVCAppExplorations\WebApplication1\src\WebApplication1\DockerTask.ps1 -Run -Environment Debug -Machine 'default' -OpenSite $False -RemoteDebugging $True".
注意我的错误中的空单引号对。当将Docker Tools for Visual Studio与Docker for Windows Beta一起使用时,应在Docker.props
文件中编辑一行(该文件已由Docker Tools for Visual Studio添加到Visual Studio项目中)。该行是-<DockerMachineName Condition=" '$(DockerMachineName)'=='' ">default</DockerMachineName>
如果运行Docker for Windows Beta,则该行的Docker.props
中的注释指示删除default
,将行更改为-<DockerMachineName Condition=" '$(DockerMachineName)'=='' "></DockerMachineName>
在关于类似错误的另一篇文章中,开发人员遇到错误是因为他们没有修改此行,而是尝试使用适用于Windows Beta的Docker运行其应用程序。但是,我相信我已经按照指示进行了修改,但是却得到了一个非常相似的错误,只是用空白的''
机器名而不是default
。我还按照Docker.props
注释中的说明重新启动了Visual Studio,甚至重新启动了我的机器,但仍然出现错误。
我感谢Windows的Docker是Beta版软件,而Visual Studio的Docker Tools也是Beta版软件,因此这可能只是一个beta错误。但是,我想知道是否有解决此问题的方法。如果没有简单的解决方案,也将帮助您深入研究该问题以获得更好的理解。
最佳答案
您是否在模板中使用端口80?使用netstat -a -b
检查端口80是否已被另一个进程侦听。
关于visual-studio - 适用于Windows Beta的Docker +适用于Visual Studio的Docker工具-DockerTask.ps1错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37647724/