我在VisualStudio 2017中创建了一个新的DotNetCore 2.0 Web项目。 我的Docker在配置了Windows的Docker服务器主机的机器上运行。
在运行解决方案时,我遇到错误,
'未设置DOCKER_REGISTRY变量。默认为空白 字符串。”
构建myfirstdotnetcore服务“ myfirstdotnetcore”失败 构建:
获取https://registry-1.docker.io/v2/:net / http:请求被取消,而 等待连接(等待时超出了Client.Timeout 标头)。
答案 0 :(得分:14)
我遇到了这个问题,并按照以下步骤进行了解决。
以管理员身份运行Visual Studio
您正在运行的Docker主机应登录到您的DockerHub帐户。
这很重要 造成此问题的主要原因是Visual Studio无法从Docker Hub下载Nano服务器映像。因此,请始终确保您从运行主机登录到dockerhub帐户
答案 1 :(得分:2)
我需要设置docker注册表环境变量。出于某些原因,路径需要小写。
[Environment]::SetEnvironmentVariable("DOCKER_REGISTRY", "d:\docker\registry\", "Machine")
答案 2 :(得分:2)
我在github上发现了以下相关问题:
TLDR;此错误具有误导性,并且可以掩盖Visual Studio当前吞下的多个内部docker错误(这些错误应该在生成输出中可见)-预计将在 Visual Studio 2017 15.8 中修复,但自15.8起.2这仍然是一个问题,并且该错误仍处于打开状态,因此我认为它仍在继续。
直到那时,普遍的共识似乎是,以下步骤组合应可解决大多数基本问题。 注意!重新启动计算机后,可能需要重复这些操作。
docker login
我不确定上述顺序是否重要。
答案 3 :(得分:1)
答案 4 :(得分:0)
您有详细的错误消息吗? 我遇到了类似的问题,原来我的计算机上未启用虚拟化。
在电源外壳中运行'systeminfo',并确保已启用hyper-v
答案 5 :(得分:0)
我几乎就像@David Silwal所说的那样。
我以管理员身份运行Visual Studio。
我已经登录了docker hub帐户,但是即使那样,它也无法正常工作。
因此,我注销并再次登录。然后,它起作用了!
答案 6 :(得分:0)
只需清洁项目解决方案资源管理器并重建解决方案即可。
答案 7 :(得分:0)
答案 8 :(得分:0)
我尝试了上述所有内容,但没有任何效果。对我来说,问题很简单,我没有名为DOCKER_REGISTRY的环境变量,因为它明确指出了错误,因此我创建了一个名为DOCKER_REGISTRY的系统环境变量,并为其指定了路径C:
。 This的答案帮助了我。记住在创建变量后重新启动系统。