【问题标题】:The DOCKER_REGISTRY variable is not set. Defaulting to a blank stringDOCKER_REGISTRY 变量未设置。默认为空字符串
【发布时间】:2018-12-07 11:47:00
【问题描述】:

我在 VisualStudio 2017 中创建了一个新的 DotNetCore 2.0 Web 项目。 我在为 Windows 配置了 Docker 服务器主机的机器上运行了 docker。

在运行解决方案时出现以下错误,

'未设置 DOCKER_REGISTRY 变量。默认为空白 字符串。'

构建 myfirstdotnetcore 服务“myfirstdotnetcore”失败 构建:

获取https://registry-1.docker.io/v2/: net/http: 请求取消而 等待连接(Client.Timeout 超过了等待 标题)。

【问题讨论】:

    标签: visual-studio docker visual-studio-2017 .net-core


    【解决方案1】:

    你有详细的错误信息吗? 我有一个类似的问题,原来我的机器上没有启用虚拟化。

    在 power shell 中运行“systeminfo”,并确保 hyper-v 已启用

    【讨论】:

    【解决方案2】:

    我遇到了这个问题,经过以下步骤后已解决。

    以管理员身份运行 Visual Studio

    您正在运行的 Docker 主机应该登录到您的 DockerHub 帐户。

    这很重要 此问题的主要原因是 Visual Studio 无法从 docker hub 下载 nano 服务器映像。因此,请始终确保您从正在运行的主机登录到您的 dockerhub 帐户

    【讨论】:

    • 您总是以管理员身份运行 Visual Studio 还是仅用于初始配置?
    【解决方案3】:

    我几乎就像@David Silwal 所说的那样。

    我以管理员身份运行 Visual Studio。

    我已经登录了我的 docker hub 帐户,但即使这样,它也无法正常工作。

    所以我注销并再次登录。然后,它成功了!

    【讨论】:

      【解决方案4】:

      我需要设置 docker registry 环境变量。由于某种原因,路径需要小写。

      [Environment]::SetEnvironmentVariable("DOCKER_REGISTRY", "d:\docker\registry\", "Machine")
      

      【讨论】:

      • 如何获取本地注册表路径?
      【解决方案5】:

      我在github上找到了这些相关问题:

      TLDR;此错误具有误导性,并且可以掩盖 Visual Studio 当前吞下的几个内部 docker 错误(这些应该在您的构建输出中可见) - 这预计将在 Visual Studio 2017 15.8 中得到修复,但从 15.8 开始.2 这仍然是一个问题,并且错误仍然存​​在,所以我认为它仍在路上。

      在此之前,普遍的共识似乎是以下步骤组合应该可以解决大多数潜在问题。 注意!这些可能需要在机器重新启动后重复

      • 以管理员身份运行 Visual Studio
      • 确保您已登录到 Docker - 例如。运行docker login
      • 重新启动 Docker for windows(右键单击系统托盘并选择重新启动)

      我不确定上述顺序是否重要。

      【讨论】:

        【解决方案6】:

        只需清理项目解决方案资源管理器并重建解决方案。

        【讨论】:

          【解决方案7】:

          在 Docker 设置 -> 网络中,我将 DNS 服务器设置切换为“固定”,如下所示,它对我有用!希望有帮助

          【讨论】:

            【解决方案8】:
            1. 以管理员身份运行 Visual Studio
            2. 右键单击 Docker 托盘图标 -> 重新启动

            【讨论】:

              【解决方案9】:

              我尝试了上面提到的所有方法,但没有任何效果。对我来说,问题只是我没有一个名为 DOCKER_REGISTRY 的环境变量,因为它在错误中明确指出,所以我创建了一个名为 DOCKER_REGISTRY 的系统环境变量,并为其提供了路径 C:This 回答帮助了我。请记住在创建变量后重新启动系统。

              【讨论】:

                猜你喜欢
                • 2013-07-27
                • 2011-04-09
                • 1970-01-01
                • 1970-01-01
                • 2013-03-23
                • 1970-01-01
                • 2018-10-18
                • 1970-01-01
                • 2017-11-26
                相关资源
                最近更新 更多