我刚刚使用最新的.Net Core Preview sdks创建了一个Web应用程序。 我试图在Linux Docker上运行它但是项目没有构建 我收到的错误是:
错误未设置DOCKER_REGISTRY变量。
默认为空白字符串。使用默认驱动程序创建网络“dockercompose11433628216532645154_default”
构建testapppreview2
服务'testapppreview2'无法构建:microsoft / aspnetcore的清单:2.1未找到。
我的docker-compose.yml文件
version: '3.4'
services:
testapppreview2:
image: ${DOCKER_REGISTRY}testapppreview2
build:
context: .
dockerfile: TestAppPreview2/Dockerfile
它的覆盖是:
version: '3.4'
services:
testapppreview2:
environment:
- ASPNETCORE_ENVIRONMENT=Development
ports:
- "80"
有人可以指点我指点吗?
进一步资料:
错误将我指向此文件:
C:\ Program Files(x86)\ Microsoft Visual Studio \ Preview \ Community \ MSBuild \ Sdks \ Microsoft.Docker.Sdk \ build \ Microsoft.VisualStudio.Docker.Compose.targets 363
答案 0 :(得分:4)
当您收到此错误时,您应该查看Output -> Docker
,通常会显示问题所在。可能是您尝试覆盖的容器正在运行。或者其他一些配置问题。
通过阅读Docker Output,您应该能够快速推断出问题所在并进行修复。太糟糕了,Visual Studio没有指示您这样做,但现在只给出这个通用的The DOCKER_REGISTRY variable is not set
错误。
答案 1 :(得分:0)
由于错误指出Error The DOCKER_REGISTRY variable is not set.
- 您应该将其添加到您的环境变量中。
为此,只需在cli中输入以下带有相应注册URL的命令:
export DOCKER_REGISTRY=<your-docker-registry>
答案 2 :(得分:0)
回应有点晚。我遇到了这个问题,并按照以下步骤解决了。
- 以管理员身份运行Visual Studio
- 您正在运行的Docker主机应登录到您的DockerHub帐户。这个非常重要。提到的ENV变量已在此步骤后设置。
此问题的主要原因是Visual Studio无法从docker hub下载nano服务器映像,因为它看不到任何dockerhub详细信息。因此,请务必确保您已从运行docker host的状态登录到dockerhub帐户,或者可以手动设置此注册表,我认为这不是一个完美的方法。
您可以通过Visual Studio输出窗口进行验证。