【问题标题】:Visual Studio Container Tools requires Docker to be running before building, debugging or running a containerized projectVisual Studio 容器工具要求在构建、调试或运行容器化项目之前运行 Docker
【发布时间】:2018-07-09 13:34:04
【问题描述】:

我正在研究 .Net 核心微服务。我安装了包含 docker cli 和 kitematics 的 Docker Toolbox。之后,我在 Visual Studio 2017 中创建了一个简单的 (.Net core) web api 项目,并启用了 docker 支持。

但是当我按 F5 运行程序时,它显示以下错误并且不运行。

Visual Studio Container Tools 要求在构建、调试或运行容器化项目之前运行 Docker。

请查看所附图片。

运行项目时出现 Visual Studio 错误

如果我使用 docker cli 构建和运行项目,它就可以工作。问题出在 Visual Studio 2017 上。

【问题讨论】:

标签: docker visual-studio-2017 docker-compose microservices asp.net-core-webapi


【解决方案1】:

就我而言,我在 Dependencies > Packages 中对 Microsoft.VisualStudio.Azure.Containers.Tools.Targets 的引用有误

删除引用修复了错误。

【讨论】:

  • 当我删除它时,它抛出“项目不知道如何运行配置文件 docker”,这个错误促使我开始:D
  • @ÇağlarCanSarıkaya 我也遇到了同样的错误,有什么办法可以解决这个问题吗?
  • 嗨,我通过安装 docker desktop 解决了这个问题。当我需要在容器上工作时,首先启动 docker 桌面,然后是 Visual Studio 上的项目。实际上,它看起来不像一个合适的解决方案,但对我有用
  • 不安装docker桌面是否可以做到?我想直接用wsl中的docker解决
【解决方案2】:

我在将 .Net Core 2.0 应用程序更改为 .Net Core 2.2 后尝试重建解决方案时遇到了同样的错误。当我重置 Windows 时,我的机器上没有安装 docker。为了解决这个问题,我拥有to do is to install the docker for desktop,因为我想将我的应用程序容器化。

安装 Docker 后,它会要求您启用 Hyper-V 和容器功能。通过单击前面弹出窗口中的确定按钮,将为您启用此功能。

您的计算机将自动重新启动,完成后,您应该能够看到任务栏中的虚拟化已启用。

在此之后我没有遇到此错误。

【讨论】:

  • 我正在尝试不安装 Docker for Windows;只是wsl中的docker。你知道怎么做吗?谢谢
【解决方案3】:

检查虚拟框中默认虚拟机设置中的共享文件夹,以确保您共享了项目所在的磁盘。默认情况下仅共享 C:\Users。因此,或者您可以将项目移动到 C:\Users 文件夹中的某个位置(例如在桌面文件夹中)

【讨论】:

    【解决方案4】:

    就我而言,这个问题是由禁用的 BIOS 虚拟化引起的。要启用虚拟化,see here。为了检查是否已启用虚拟化,请启动任务管理器 > 性能 > 查找虚拟化。如果您在全功能 IIS 中托管 docker 容器应用程序,请确保以管理员身份启动 Visual Studio。

    【讨论】:

      【解决方案5】:

      我遇到了同样的问题,我通过在 Visual Studio 2017 的调试菜单中切换到 IIS Express 而不是 Docker 解决了这个问题

      【讨论】:

      • 当我们在 Visual Studio 中切换到 IIS Express 时,应用程序运行在本地 IIS Express 而不是 docker 上。它类似于运行任何其他 .NET 应用程序。由于这个应用程序没有容器化,所以没有实现容器化的目标。您可以通过在 power shell 中运行 docker ps 命令来验证这一点,该命令会显示系统上正在运行的容器。
      • downvote,op 询问如何调试容器服务,您的回答基本上是“停止尝试并改用 IIS express”
      【解决方案6】:

      出现问题是因为 Visual Studio 容器无法连接到 Docker for Windows,解决方案是使用以下命令从 Docker CLI 打开 Visual Studio 2017。 /c/Program\ Files\ \(x86\)/Microsoft\ Visual\ Studio/2017/Community/Common7/IDE/devenv.exe C:\\PATH\\TO\\MY\\SOLUTION.sln

      这里:

      C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\devenv.exe
      

      是我的 devenv.exe 文件和第二个参数的位置

      C:\\PATH\\TO\\MY\\SOLUTION.sln
      

      显示解决方案文件的路径。

      有关此解决方案的更多详细信息,请单击Here

      【讨论】:

        猜你喜欢
        • 2015-10-21
        • 2017-05-04
        • 2016-07-25
        • 2019-06-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-07-01
        • 1970-01-01
        相关资源
        最近更新 更多